排序的基本内容

排序的定义

  1. 排序:重新排列表中的元素,使表中的元素满足按关键字递增或递减的过程。
  2. 输入:n个记录R1,R2,...Rn,对应的关键字有k1,k2,...kn
  3. 输出:输入序列的一个重排R11,R22,...Rnn,使得有k11 <= k22 <= ... knn
  4. 算法的稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。
  •  算法是否具有稳定性并不能衡量与一个算法的优劣,他主要是对算法的性质进行描述。

排序算法的分类

根据数据元素是否完全在内存中分为

1、内部排序:排序期间元素全部存放在内存中的排序

         内部排序进行的两种操作

              比较:通过比较确认对应元素的前后关系

              运动:通过移动元素以达到有序

            (并非所有内部排序算法都要基于比较,基数排序不基于比较)

2、外部排序:在排序期间元素无法全部同时存放在内存中,必须在排序过程中根据要求不断地在内、外存之间移动的排序

发布了82 篇原创文章 · 获赞 52 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/iostream992/article/details/96919201