c#排序,且数据量很大。大概500万。

[复制链接]
查看11 | 回复5 | 2011-1-17 14:18:00 | 显示全部楼层 |阅读模式
用c#实现一个排序功能,数据量有500万,如果用冒泡似乎不太符合条件,会冒到崩溃,请教高手,还有何种方式进行排序。
请高手写个例子啊!

回复

使用道具 举报

千问 | 2011-1-17 14:18:00 | 显示全部楼层
如果这是一个学校里的题目,用冒泡排序是可以的。虽然效率不高,但这种算法占用内存最少。首先假设你的数据不太大,比如一条记录占10 bytes,500万就是50M。对现在计算机还是可以承受的。如果这是一个实际项目,你这么做排序没有任何意义。标准的做法是把需要查询的那部分数据插入数据库。然后再利用数据库的查询功能进行操作。 排序算法很多,需要很多更详细的资料才能判断哪个算法更有利。下面的链接有各种算法的优劣比较,和例子。 (原来的链接在百度居然通不过)
回复

使用道具 举报

千问 | 2011-1-17 14:18:00 | 显示全部楼层
快速排序算法比较好用,分组处理
回复

使用道具 举报

千问 | 2011-1-17 14:18:00 | 显示全部楼层
500W啊,显然不能够一次性读入内存了所以如你所说的冒泡排序一类的内部排序算法都失效了去看一下外部排序吧
回复

使用道具 举报

千问 | 2011-1-17 14:18:00 | 显示全部楼层
你500万数据是在数据库中么? 如果是就在数据库排升序降序500w 我的妈啊 要是过输入 会死人要不然用Java把那有个接口专门排序的 我也不知道效率高不
回复

使用道具 举报

千问 | 2011-1-17 14:18:00 | 显示全部楼层
高手写了个例子,正写那500W的数据测试呢扔数据库里排吧,500W对数据库来说不多
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行