数据结构与算法
帅帅的猪头
千秋邈矣独留我,百战归来始读书
展开
-
排序算法篇 - 插入排序
基本介绍插入式排序属于内部排序法,是对待排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的。插入排序(Insertion Sorting)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码依次和有序表元素的排序码进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。推导过程原始数组:17,3,25,14,20,9#第一趟排序(假设下标“0”为有序表,下标“1”原创 2021-07-28 19:45:53 · 881 阅读 · 0 评论 -
排序算法篇 - 选择排序
基本介绍选择排序属于内部排序法,是从待排序的数组中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的。选择排序(select sorting)是一种简单的排序方法。它的思想是:第一次从arr[0] – arr[n-1]中选取最小值,与arr[0]交换。第二次从arr[1] – arr[n-1]中选取最小值与arr[1]交换。第三次从arr[2] – arr[n-1]中选取最小值与arr[2]交换。以此类推,第i次从arr[i-1] – arr[n-1]中选取最小值与arr[i-1]交换,第n-原创 2021-07-27 22:27:21 · 166 阅读 · 0 评论 -
排序算法篇 - 冒泡排序
基本介绍冒泡排序(Bubble Sort)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素主键从前移向后部,就像水底下的气泡一样逐渐向上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志flag判断元素是否进行过交换,从而减少不必要的比较。推导过程原始数组:3,9,-1,10,2#第一趟排序(1) 3,9,-1,10,2 #arr[0]和arr[1]比原创 2021-07-27 20:45:04 · 734 阅读 · 0 评论