A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© stone24 中级黑马   /  2014-3-24 21:27  /  1193 人查看  /  2 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 stone24 于 2014-3-26 18:36 编辑

排序都有哪些方法,哪一种效率高,都怎么运用啊!!求支招

2 个回复

倒序浏览
//        主要排序法有:
//        一、冒泡(Bubble)排序——相邻交换
//        二、选择排序——每次最小/大排在相应的位置
//        三、插入排序——将下一个插入已排好的序列中
//        四、壳(Shell)排序——缩小增量
//        五、归并排序
//        六、快速排序
//        七、堆排序
//        八、拓扑排序
//        九、锦标赛排序
//        十、基数排序

       
//选择排序   我在这里就选择一种相对简单较高的选择排序把
//递归排序效率是很高的 不过这很难,初学者可以先把其他的学会,如果还有时间可以去学习一下
//        ----------------------------------Code 从小到大排序n个数--------------------------------
        public void SelectSortArray()
        {
            int min_index;
            for(int i=0;i<n-1;i++)
            {
                 min_index=i;
                 for(int j=i+1;j<n;j++)//每次扫描选择最小项
                    if(arr[j]<arr[min_index])  min_index=j;
                 if(min_index!=i)//找到最小项交换,即将这一项移到列表中的正确位置
                 {
                     int temp;
                     temp=arr[i]; arr[i]=arr[min_index]; arr[min_index]=temp;
        }
        }
        }
回复 使用道具 举报
luoyilan222 发表于 2014-3-24 21:56
//        主要排序法有:
//        一、冒泡(Bubble)排序——相邻交换
//        二、选择排序——每次最小/大排在相应的位 ...

哦,谢啦
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马