当前位置:编程学习 > C#/ASP.NET >>

问一个基础的排序问题,最好点高效的代码。谢谢。

100个数。有可能重复,有三组。三组都是一百个数
按从小到大排列。
选出最小的两个数(第一小的和第二小的)。注意的是有可能重复。要选两个不一样的最小的数。

然后把每组得到的2个数进行全排列。谢谢。

--------------------编程问答-------------------- 方法不难,难就难在高效两个字上 --------------------编程问答-------------------- 数据库中简单! --------------------编程问答-------------------- 分别放在三个数组中,调用array.sort

然后遍历一下找出最小的俩就行了 --------------------编程问答-------------------- 如果只是100个数 你就放心排吧 一般情况没事! --------------------编程问答-------------------- 最好用泛型来做,非常简单 --------------------编程问答--------------------
引用楼主 pcgenius 的帖子:
100个数。有可能重复,有三组。三组都是一百个数 
按从小到大排列。 
选出最小的两个数(第一小的和第二小的)。注意的是有可能重复。要选两个不一样的最小的数。 

然后把每组得到的2个数进行全排列。谢谢。 


等你的100个数增长到1亿个数,需要选最小的两个数的时候,再去考虑高效吧
100个,随便你怎么玩 --------------------编程问答-------------------- .net framework里的应该已经做过高效处理了
要想实现自己需要的功能只能是自己写了
可以查查数据结构里面推荐的几个排序方法 --------------------编程问答--------------------
引用 7 楼 sunshine_anycall 的回复:
.net framework里的应该已经做过高效处理了 
要想实现自己需要的功能只能是自己写了 
可以查查数据结构里面推荐的几个排序方法

顶之,要是10000个数的话,可以考虑高效。
--------------------编程问答-------------------- .net framework里的应该已经做过高效处理了 
同意,是O(n*long n)算法,自己写,未必能超越。

100范围内的整数排序,有重复的,可以采用桶排序,O(n)复杂度
准备个100长的数组,把数字放进去,再顺次拿出来。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,