排序方法都有哪几种,比如1、2、3。。。。。。甲乙丙丁等

如题所述

排序方法一般都就那几种。像冒泡排序,直接插入排序,快速排序,简单选择排序,希尔排序,堆排序。其排序介绍自己看吧。
1、冒泡排序属于稳定排序,是一种借助“交换”进行排序的方法。首先要将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则将两个记录交换之,然后比较第二个记录与第三个记录的关键字,以此类推,直至第n-1个记录与第n个记录的关键字进行比较为止,这一过程称为第一趟冒泡排序,其结果使得关键字最大的记录被安置在最后一个记录的位置上;然后进行第二趟冒泡排序,对前N-1个记录进行同样操作;以此类推,直到在一趟排序过程中没有进行过交换记录的操作为止。
2、直接插入排序属于稳定的排序,每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。第一趟将待比较的数值与它的前一个数值进行比较,当前一数值比待比较数值大的情况下继续循环比较,依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程,结束该次循环。
3、快速排序属于不稳定排序,是对起泡排序的一种改进。它的基本思想是,通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。假设待排序的序列为{R.[s],R.[s+1],…….,R.[t]},首先任意选取一个记录,然后按下述原则从新排序记录:将关键字较他小的记录都安置在他的位置之前,将所有关键字较他大的记录都安置在他的位置后面。由此可以该“枢轴”记录最后所落的位置i作为分界线,将序列{R[s],R[s+1]…….R[t]}分割成两个子序列{R[s],R[s+1]…..R[i-1]}和{R[i+1]……R[t]},这个过程称作一趟快速排序。一趟快速排序的具体做法是:附设两个指针low和high,它们的初值分别指向数组第一个数据和最后一个数据,将枢轴记录暂存在R[0]的位置上排序过程中只作R[low]或R[high]的单向移动,直至一趟排序结束后再将枢轴记录移至正确位置上。
4、简单选择排序属于不稳定排序,基本思想是,每一趟在n-i+1(i=1,2,…n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。第i趟简单选择排序是指通过n-i次关键字的比较,从n-i+1个记录中选出关键字最小的记录,并和第i个记录进行交换。共需进行n-1趟比较,直到所有记录排序完成为止。例如:进行第i趟选择时,从当前候选记录中选出关键字最小的k号记录,并和第i个记录进行交换。
5、希尔排序属于不稳定排序,也是一种属插入排序类,它的基本思想是:先将整个待排记录序列分割称为若干个子序列分别进行直接插入排序,待整个序列中记录“基本有序”时,再对全体记录进行一次直接插入排序。希尔排序的一个特点是:子序列的构成不是简单的“逐段分割”,而是将相隔某个“增量”的记录组成一个子序列。
6、堆排序属于不稳定排序,它的基本思想是,先将初始文件R[1..n]建成一个大根堆,此堆为初始的无序区,再将关键字最大的记录R[1](即堆顶)和无序区的最后一个记录R[n]交换,由此得到新的无序区R[1..n-1]和有序区R[n],且满足R[1..n-1].keys≤R[n].key;由于交换后新的根R[1]可能违反堆性质,故应将当前无序区R[1..n-1]调整为堆,然后再次将R[1..n-1]中关键字最大的记录R[1]和该区间的最后一个记录R[n-1]交换,由此得到新的无序区R[1..n-2]和有序区R[n-1..n],且仍满足关系R[1..n- 2].keys≤R[n-1..n].keys,同样要将R[1..n-2]调整为堆。直到无序区只有一个元素为止
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-18
冒泡排序,直接插入排序,快速排序,简单选择排序,希尔排序,堆排序。

排序方法都有哪几种,比如1、2、3。。。甲乙丙丁等
1、冒泡排序属于稳定排序,是一种借助“交换”进行排序的方法。首先要将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则将两个记录交换之,然后比较第二个记录与第三个记录的关键字,以此类推,直至第n-1个记录与第n个记录的关键字进行比较为止,这一过程称为第一趟冒泡排序,其结果...

...3……可以用A、B、C……表示顺序,可以用甲乙丙丁……表示顺序吗?还...
可以用1、2、3……可以用A、B、C……表示顺序,当然应该可以用甲乙丙丁……表示顺序。还能用I,II,III,IV,V【罗马数字】来表示。

甲乙丙丁排序
3 4 1 2 3 4 2 1 4 1 2 3 4 3 1 2 4 3 2 1 你看看结果,很对称的,就这9种 如果乙在第一个,那么如果甲第二个,剩下两人就没选择了;如果甲第三、第四个,剩下两人也没选择了 如果丙、丁第一个,同上 所以就这9种

excel排序要1#,2#,3#...110#
=--SUBSTITUTE(A1,"#",)下拉填充公式 完成后选中要排序的全部列---排序---无标题行---以B列为主要关键字---升(或降)序排序---确定 完成排序后删去B列 如果是有标题行,则是B2单元格写入公式,B1单元格写入"辅助列"=--SUBSTITUTE(A2,"#",)下拉填充公式 以"辅助列"为主要关键字 ...

如何用excel做出一列数据如甲乙丙丁等的随意排列,谢谢!
方法一、输入公式=MID("甲乙丙丁戊己庚辛壬癸",INT(RAND()*10+1),1)方法二、输入公式=CHOOSE(INT(RAND()*10+1),"甲","乙","丙","丁","戊","己","庚","辛","壬","癸")方法三、输入公式=LOOKUP(INT(RAND()*10+1),{1,2,3,4,5,6,7,8,9,10},{"甲","乙","丙",...

如何让1,2,3,4,.这样排序呢?
方法一 在单元格写入1---回车后---点住该单元格右下角的小黑点,光标成黑十字形状时---点住鼠标左键下拉---选中菜单中的"以序列方式填充"方法二 在单元格写入1---回车后---点住该单元格右下角的小黑点,光标成黑十字形状时---点住鼠标右键下拉---选中菜单中的"以序列方式填充"方法三 在上...

EXCEL如何按1,2,3..的顺序给行排序
1、首先打开Excel表格,在表格中输入几组需要按行排序的数据。2、选择单元格,点击工具栏中的“排序”,然后选择“自定义排序”。3、然后点击“选项”图标在打开排序对话框。4、此时页面将弹出排序选项对话框,将“方向”改为“按行排序”,点击确定。5、然后您可以在main关键字中选择按行排序,例如,...

一层楼,有10级台阶,可以一步、二步或三步走,有几种走法?
到第一层:1种 到第二层:2种 到第三层:4种,分别为 1 1 1 1 2 2 1 3 到第四层 7种。计算过程为:到第一层的方法数 + 到第二层方法数 + 到第三层方法数。分别为 1 -- 3 1 1 -- 2 2 -- 2 1 1 1 -- 1 1 2 -- 1 2 1 -- 1 3 -- 1 到第五层方法数:13...

什么是排序?常用的排序方法有哪些?比较一下冒泡排序和选择排序算法上的...
1、插入排序:将一个无序的数组,以第一个记录作为有序,然后进行排序。2、希尔排序:是插入排序的一种。3、选择排序:区间分为有序区间和无序区间,每次选择无序区间的第一个元素,在有序区间合适的位置进行插入操作。4、冒泡排序:通过不断比较并交换相邻的两个元素,如果顺序错误就把他们交换过来...

将1,2,3三个数字按照不同顺序排列及全排列有几种排序方式,如何计算的...
全排列:A(3,3)=3!=3*2*1=6 取2个数的排列:A(3,2)=3!\/(3-2)!=6

相似回答