C/C++有许多排序办法,交换法是其中之一,它的特点是正序排列速度最快,逆序最慢,下面是交换排序法的思想和用法
工具/原料
笔记本
任意一款C/C++代码开发环境(小编用的是Dev-c)
交换排序法的思想
1、我们首先要知道交换排序的算法过程,如下图所示
2、从这里可以发现,交换排序法的思想就是让一个数与其他所有的数比一次大小,然后和(大于)小于它的数交换位置。
交换排序法的用法
1、在C++里,既然要比大小,首先应该做一个循环,用来遍历这个数组。注意这里的循环条件一定是数组长度-1(因为循环到倒数第二个元素时,最后一项是肯定最大或最小,就不用比了)。这里小编做了一个函数,由于C++无法返回数组,我们可以让它返回一个指向数组的指针,如图所示。
2、接下来,要让数组中的每一个元素都和数组中其他的元素进行比大小,就要在循环中再加一个内层循环,让它的初值比外层循环中的变量大1,循环条件是数组长度。
3、然后加入判断,这里是从大到小,如果要从小到大,就把大于号改成小于号就行了。
4、在判断里,交换两个数的值,排序就完成了
5、最后让指针指向数组,返回这个指针就行了。
6、另外,强烈建议在排序函数写好之后,把这个函数单锿辞柃妾独做一个头文件,因为C++自带的头文件里没有排序函数,只要把这个头文件放到软件目录下的C++头文件里,就可以用了。