
数据结构
马兆娟
这个作者很懒,什么都没留下…
展开
-
图解"数据结构--内部排序算法"----插入排序:直接插入排序、希尔排序
一、插入排序(Insertion Sort)的基本思想 我的理解:把要排序的记录插入到已排好序的文件中。 标准定义:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的字文件中的恰当位置,直到全部记录插入完成为止。第一个记录为有序区,依次将剩余记录插入其中。二、插入排序分类 本文介绍两种插入排序方法:直接插入排序和希尔排序原创 2012-10-29 09:22:45 · 8499 阅读 · 3 评论 -
图解"数据结构--内部排序算法"----选择排序:直接选择排序、堆排序
一、选择排序(Selection Sort)的基本思想 每一趟从待排序的记录中选出关键字最小的记录,顺序放在已排好序的子文件的最后,直到全部记录排序完毕。二、选择排序分类 本文介绍两种选择排序:直接选择排序、堆排序。2.1 直接选择排序 2.1.1 直接选择排序的基本思想 n个记录的文件的直接选择原创 2012-10-30 10:33:58 · 4288 阅读 · 1 评论 -
图解数据结构---“内部排序”综述
《图解数据结构---“内部排序”综述》一、为什么我们要进行排序? 在当今社会里,我们经常面临要在浩如烟海的信息中查找某条信息。要使这种查找操作有效、快速,就必须按照某种合理的次序存储信息。例如,如图书馆的书籍及文献资料不是分门别类地存储,我们如何能迅速找到自己所需借阅的资料?又比如,英文字典若不是按照字母顺序排列词条,我们如何快速查找所需单词? 图书馆书籍按类存放原创 2012-10-31 20:44:32 · 2719 阅读 · 5 评论 -
图解"数据结构--内部排序算法"----交换排序:冒泡排序、快速排序
一、交换排序的基本思想两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。二、交换排序分类 本文介绍两种交换排序方法:冒泡排序、快速排序2.1 冒泡排序 2.1.1 冒泡排序基本思想 每次遍历完序列都把最大(小)的元素放在最前面,然后再对剩下的序列重复前面的一个过程,每次遍历完之后待原创 2012-10-29 11:48:43 · 5556 阅读 · 2 评论 -
图解"数据结构--内部排序算法"----分配排序:箱排序、基数排序
一、分配排序的基本思想排序过程无须比较关键字,而是通过"分配"和"收集"过程来实现排序.它们的时间复杂度可达到线性阶:O(n)。二、分配排序分类本文介绍两种分配排序:箱排序、基数排序。2.1 箱排序2.1.1 箱排序的基本思想 假设有一组长度为N的待排关键字序列K[1....n]。首先将这个序列划分成M个的子区间(桶) 。然后基于某种映原创 2012-10-31 10:25:53 · 4680 阅读 · 1 评论 -
图解"数据结构--内部排序算法"----归并排序
归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用,归并排序将两个已排序的表合并成一个表。 归并排序基本原理通过对若干个有序结点序列的归并来实现排序。所谓归并是指将若干个已排好序的部分合并成一个有序的部分。归并排序基本思想设两个有序的子序原创 2012-10-29 20:12:48 · 4933 阅读 · 3 评论