各种排序算法的实现-8(选择排序的实现)

来源:互联网 发布:k线绘图软件 编辑:程序博客网 时间:2024/05/16 15:05

       这种排序算法的实现很容易理解 就是从后面的序列中找一个最小的出来,不断的找啊 找最后整个堆找没了就完了

思路很简单, 就好像你在人家教室外面喊  第一名出来,然后第一名出来 ,第二名出来 ,第二名出来, 如此下去 整个教室就空了, 选择排序一样,就是 第一次喊 最小的出来,然后 把最小的 给推出去,  不断的喊 喊道整个序列都没了 也就有序了 下面是具体的算法的实现的例子  大家可以看看 

void sort(int * p, int len){for (int i = 0; i<len; i++){int k = i;for (int j = i + 1; j<len; j++){if (*(p + j) < *(p + k)){k = j;}}if (k != i){int temp = *(p + i);*(p + i) = *(p + k);*(p + k) = temp;}}}int main(int argc, char* argv[]){int a[] = {-90, 23, -1, 12, 4, 89, 4};sort(a, 7);for (int i = 0; i < 7; i++){printf("%d ", a[i]);}system("pause");return 0;}

0 0
原创粉丝点击