读书人

简单选择排序理解异常了吗

发布时间: 2012-02-26 20:19:45 作者: rapoo

简单选择排序理解错误了吗?

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 楼说的不错
楼主的程序逻辑好像不是选择排序的
[解决办法]
探讨
首先从i=0,在j=0:4中找一个最小的与data[i]交换,然后i=1,在j=1:4中找一个最小的与data[i]交换,如此如此。

读书人网 >软件架构设计

热点推荐