随笔分类 -  数据结构和算法

摘要:本文参考资料:书籍《大话数据结构》,微信公众号:码农有道。 希尔排序算法介绍 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 简单插入排序很循规蹈矩,不管数组分布是怎么样的,依然一步 阅读全文
posted @ 2018-06-22 16:07 余大彬 阅读(255) 评论(0) 推荐(0)
摘要:直接插入排序法介绍 直接插入排序(Straight Insertion Sort)的基本操作是:将一个元素插入到已经排好序的有序表中。比如有n个待排序的元素,把第一个元素当作有序表的第一个元素,后面的n-1个元素表示未排序的元素,排序过程中每次从未排序的元素中取出第一个元素,将它插入到有序表中的适当 阅读全文
posted @ 2018-06-22 15:24 余大彬 阅读(991) 评论(0) 推荐(1)
摘要:本文参考资料:书籍《大话数据结构》,微信公众号:码农有道。 选择排序介绍 选择排序是一种简单的排序算法,它的基本原理是:将一个未排序的数列中的元素依次进行比较,把最大或最小值放在第一位,然后再将剩下的未排序的数列元素进行比较,最小值或最大值放在第二个位置;以此类推,直到数列中的元素按照一定的方式拍好 阅读全文
posted @ 2018-06-22 15:09 余大彬 阅读(396) 评论(0) 推荐(0)
摘要:本文参考资料:书籍《大话数据结构》,微信公公共号“码农有道” 冒泡排序介绍 冒泡排序一种简单的交换排序算法。它会遍历若干次要排序的数列,每次遍历时,它都会从前往后依次的比较相邻两个数的大小;如果前者比后者大,则交换它们的位置。这样,一次遍历之后,最大的元素就在数列的末尾! 采用相同的方法再次遍历时, 阅读全文
posted @ 2018-06-22 14:45 余大彬 阅读(158) 评论(0) 推荐(0)
摘要:线性表的定义 在生活中其实处处可见线性表的例子。比如一个班级的小朋友,一个跟着一个排着队,有一个打头,有一个收尾,当中的小朋友 每一个都知道他前面一个是谁,他后面一个是谁,这样如同有一根线把他们串联起来 了。 就可以称之为线性表。 所以线性表的定义为:零个或多个数据元素的有限序列。 首先它是一个序列 阅读全文
posted @ 2018-06-21 14:22 余大彬 阅读(579) 评论(0) 推荐(0)