回 帖 发 新 帖 刷新版面

主题:排序算法讨论(加30分)

  有没有什么除基本的一些排序外,
  有没有什么稀奇,奇妙的排序算法(效率不一定要高)。
  加30分[em5]

  注意:是算法哦![em1]

回复列表 (共21个回复)

沙发

呵呵
用死循环,每次随机产生两个下标,然后交换,再判断数组是否已经有序,若是则退出死循环~~~~~~~~~~~~

板凳


[em10][em10][em10][em10]

3 楼

快速冒泡
建立三个数组,读入数组1,然后随机取数组1中一个数。遍历数组,大于这个数归到数组3,
小于这个数的归到数组2。最后分别对数组2和数组3进行优化冒泡排序。

4 楼

选择排序
  设数组中有N个数,取I=1,2,3,.....N-1,每次找出后N-I+1个数字中最小的与第1个数字交换位子。

5 楼

假设有一个数组!
 var
 a:array[1..n]of integer;
  t,i,j:integer;
begin
 for i:=1 to n-1 do 
  for j:=i+1 to n do 
    if a[i]<a[j]  then //升序(a[i]>a[j])
   then  
    begin
         t:=a[i];
        a[i]:=a[j];
        a[j]:=t;

  end;
for i:=1 to n do 
  write(a[i]);
end. 
  这好象叫什么选择排序哦!?
  还有什么冒泡法哦!

6 楼

小弟不才,我个人认为堆排序也不错.

7 楼

var
 a:array[1..n]of integer;
  t,i,j:integer;
begin
 for i:=1 to n-1 do 
  for j:=i+1 to n do 
    if a[i]<a[j]  then    then  
    begin
         t:=a[i];
        a[i]:=a[j];
        a[j]:=t;

  end;
for i:=1 to n do 
  write(a[i]);
end. 
 

8 楼

本人个人认为二分法排序也不错,不过还是最中意于快速排序.你要想要源程序,可以给我发邮件!

9 楼

手动排序法最好!!
[em20][em1][em9]
{你打好程序我就排好了,信不?}
大数据........
反正不用高效率!!![em1][em1][em1]

10 楼


堆排序
二分法
数组排序{数据集中时}
冒泡法

我来回复

您尚未登录,请登录后再回复。点此登录或注册