数据结构与算法
数据结构是我们组建一切计算机世界的砖瓦。
奥利给,给我干碎他。
清风画扇
这个作者很懒,什么都没留下…
展开
-
超详解排序算法之(六)归并排序
归并排序 归并排序简介 归并排序是利用归并的思想实现排序的方法,这个排序算法采用了经典的分治策略【所谓分治法,先将问题***分***成一些小的问题然后递归求解,***治***的处理是将分的阶段中得到的各个答案“修补”在一起,从而实现分而治之。 】 看图释义 我们第一步递归的将原始数组分为不可再分的单元 第二步,归并到一起是归并算法的精髓,我们从最小单元开始合并,每一次合并就是一次有序化。通...原创 2020-04-06 22:11:11 · 159 阅读 · 1 评论 -
超详解内部排序算法之(五)快速排序
快速排序 快速排序简单介绍 快速排序:QuickSort 是对冒泡排序的一种改进。 基本思想 通过一趟排序将要排序的数据分割成两个独立的部分,其中一部分的所有数据都比另外一部分的所有数据都要小,【可以在这思考一下怎么做- ,或许已经知道怎么做了,等下就验证一下是否是自己想的一样】,然后在按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据有序。 图解分析快速排序的...原创 2020-04-06 20:12:05 · 269 阅读 · 0 评论 -
超详解排序算法之(四)希尔排序
希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。原创 2020-04-05 22:00:20 · 215 阅读 · 0 评论 -
超详解内部排序算法之(三)简单插入排序
插入排序 插入排序的基本介绍 插入排序,是对于将要排序的元素以插入的方式寻找该元素的适当位置,以达到排序的目的。 插入排序的思想 插入排序的基本思想是:把N个待排序的元素看做一个有序表和一个无序表,开始时有序表中只包含一个元素(即第一个元素),无序表中包含有N-1个元素,排序过程中每次从无序表中去除第一个元素,把它的排序码依次与有序表元素的排序码进行比较,将它 插入到有序表中的适当位置,是指...原创 2020-04-05 18:31:06 · 197 阅读 · 0 评论 -
超详解内部排序算法之(二)选择排序
选择排序 选择排序的思想 选择排序是一张简单的排序方法,基本思想:第一次从数组中【arr[0]~arr[n-1]】选取最小值,与arr[0]交换,第二次从【arr[1]-arr[n-1]】选取最小值与arr[1]进行交换,第三次从arr[2]-arr[n-1]选取最小值与arr[2]进行交换,…,第i次从arr[i]-arr[n-1]中选取最小值,与arr[i-1]进行交换,…,第n-1次从ar...原创 2020-04-05 16:49:58 · 118 阅读 · 0 评论 -
超详解内部排序算法之(一)冒泡排序
常见的八种内部排序算法 -(一)冒泡排序 简单介绍 开篇 这是一篇小白开始接手写简单算法的小白文。写这边文章的主旨就是看到有小伙伴觉得算法一定会很难,纵观已有的文章,大多都是将整个处理代码帖出来的,让很多初次接触的小伙伴觉得不是很好理解。所以写这篇文章就是通过简单的示例+从特殊到一般的推导过程,帮助初次想要了解的小伙伴更好的理解算法。旨在消除小伙伴对于算法这一名词的莫名恐惧。 先简单说一下内部排序的算法...原创 2020-03-29 17:16:26 · 308 阅读 · 0 评论