自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

越一步之距

下蹲是为了跳得更远

  • 博客(8)
  • 收藏
  • 关注

原创 内部排序—堆排序

堆实际上是一棵完全二叉树,其任何一非叶节点满足性质:Key[i]=Key[2i+1]&&key>=key[2i+2]即任何一非叶节点的关键字不大于或者不小于其左右孩子节点的关键字。堆分为大顶堆和小顶堆,满足Key[i]>=Key[2i+1]&&key>=key[2i+2]称为大顶堆,满足 Key[i]堆排序的基本思想是对一组待排序记录的关键字,首先按堆的定义排成一个序列(即建立初始

2017-06-27 21:44:12 278

原创 内部排序—基数排序

基数排序的思想是设立r个队列,队列编号分别为0、1、2、…r-1。首先按最低有效位的值把n个关键字分配到这r个队列中;然后从小到大将各队列中的关键字依次收集起来;接着按次低有效位的值把刚收集起来的关键字分配到r个队列中。重复上述分配和收集过程,直到最高有效位。这样得到一个从小到大的有序关键字序列。为了减少记录的移动次数,队列可以采用链式存储分配,称为链队列。每个链队列有2个指针,分别指向队头和队尾

2017-06-10 08:51:50 491

原创 内部排序—归并排序

所谓“归并”,是将两个或两个以上的有序文件合并成一个新的有序文件。归并排序是把一个有n个记录的无序文件看成是有n个长度为1的有序子文件组成的文件,然后进行两两归并,得到n/2个长度为2或1的有序文件,再两两归并,如此重复,直到最后形成包含n个记录的有序文件为止。这种反复将两个有序文件归并成为一个有序文件的排序方法称为两路归并排序。    两路归并排序的核心操作是将一维数组中前后相邻的两个有序序

2017-06-09 22:22:55 619

原创 内部排序—快速排序

快速排序的基本思想是:通过一趟排序将待排序的记录划分成两个部分,其中一部分记录的关键字均不大于另一部分记录的关键字,然后再分别对这两部分记录继续进行快速排序,以达到整个序列有序。    用一维数组存储记录,一趟快速排序的具体做法是:设置两个指针i和j,他们的初始值分别指向第一个记录和最后一个记录。设置一个枢轴记录(通常为第一个记录)的关键字为pivotkey,则首先从j所指的位置向前搜索,找到

2017-06-08 20:03:18 745

原创 内部排序—希尔排序

希尔排序的基本思想是:现将整个待排序的序列分成若干个子序列,然后分别进行直接插入排序,待整个序列中的记录基本有序时,再对全体记录进行一次直接插入排序。具体做法是:先取一个小于n的整数d1作为第一个增量,把文件全部分成d1个组,即所有距离为d1倍数序号的记录放在同一个组中,在各组内进行直接插入排序;然后取第二个增量d2重复上述分组和排序工作,依次类推,直到所取得增量为1。即所有的记录放在同一组进行直

2017-06-07 21:20:14 488

原创 内部排序—冒泡排序

n个记录进行冒泡排序的基本方法是:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则交换这2个记录的值,然后比较第二个记录和第三个记录得关键字,以此类推,直到第n-1个记录和第n个记录得关键字比较过为止。上述过程称为第一趟冒泡排序,其结果是关键字最大的记录被交换到第n个记录的位置上。然后进行第二趟冒泡排序,对前n-1个记录进行同样的操作,其结果是关键字次大的记录被交换到第n-1个记

2017-06-06 21:38:11 278

原创 内部排序—简单选择排序

n个记录进行简单选择排序的基本方法是:通过n-i(1在次关键字之间比较,从n-i+1个记录中选出关键字最小的记录,并和第i个记录进行交换,当i等于n时偶有记录有序排列。    简单选择排序是一种不稳定的排序方法,时间复杂度为O (n2)。在排序过程中仅需要一个元素作为辅助空间用于数组元素值的交换,空间复杂度为O(1)。/// /// 简单选择排序/// 思想:每次从待排序的数组

2017-06-05 21:28:24 233

原创 内部排序—直接插入排序

直接插入排序是一种简单的排序方法,具体做法是:在插入第i个记录时,R1、R2…Ri-1已经排好序,这时候将Ri的关键字Ki依次与关键字Ki-1、Ki-2等进行比较,从而找到应该插入的位置并将Ri插入,插入位置及其后的记录依次向后移动。 直接插入排序法在最好的情况下(待排序列已按照关键码有序)每趟排序只需要做1次比较而且不需要移动元素,因此n个元素排序时的总比较次数为n-1次,总的移动次数为0次。在

2017-06-02 09:03:35 490

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除