简单选择排序理解错误了吗?
- C/C++ code
void insert(int data[]){ for(int i=0; i<N i++) { int m=i; for (int j=i+1; j<N; j++) { if (data[j] < data[i]) m=i;如果待排序的字符串是5、2、1、3、4的时候当5和2比较交换束以后的结果不是2、5、1、3、4吗,下次交换的数字不是5和1吗,可是结果运行的时候确实正确的,为啥啊?? } 交换data[i]和data[j];}[解决办法]
首先从i=0,在j=0:4中找一个最小的与data[i]交换,然后i=1,在j=1:4中找一个最小的与data[i]交换,如此如此。
[解决办法]
1 楼说的不错
楼主的程序逻辑好像不是选择排序的
[解决办法]