![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
郑大那只鸟
一只迷途中的大学生
展开
-
排序算法之堆排序 C语言代码
想要彻底掌握堆排序,你就一定要彻底理解堆排序的过程,原理并进行实践 ,因为我就已经看了很多遍了,还是每记住怎么搞的。 原理:(小顶堆为例子) 小二叉树:即最小二叉树(带两个结点或一个结点) 一颗二叉树父节点总比子节点小(子节点之间没有规定)即(小顶堆二叉树),这样从下看到上,最上面的结点是这棵树里最小的数。(很简单的道理,不懂得话可以试着画一画) 过程 假如现在有一颗这样的二叉树,整个排序的过程...原创 2020-01-28 18:36:59 · 216 阅读 · 0 评论 -
单链表的实现一
举个例子啊! C语言的连续存储(像数组,动态划分的连续空间)就像大学宿舍,一个学院的同学全都放到一个宿舍楼,里面一个宿舍挨着一个宿舍,找你们院的同学,你可以一个一个寝室挨着找 但链表是 一个学院的同学放到不同宿舍楼里面,但你找人的时候,找完一个宿舍,没找到,这个宿舍中的同学告诉你下一个咱们院的宿舍在那栋楼(千万别挨着着找,找到黑也找不到),然后你就找下一个宿舍。那这个过程中是不是得有一个宿舍信息代...原创 2020-01-01 21:20:22 · 91 阅读 · 0 评论 -
归并排序C语言简单实现
归并排序 归并排序呢!原理是相对比较简单,但是实现时细节比较难理解的一种排序算法,建议自己写一写就知道哪里是难点。 大致思路:其的基本思路就是将数组分成二组A,B,如果这二组组内的数据都是有序的,那么就可以很方便的将这二组数据进行排序。如何让这二组组内数据有序了? 可以将A,B组各自再分成二组。依次类推,当分出来的小组只有一个数据时,可以认为这个小组组内已经达到了有序,然后再合并相邻的二个小组就可...原创 2019-12-24 21:45:25 · 331 阅读 · 0 评论 -
通俗易懂排序算法之快速排序
快速排序简介举例c语言代码 简介 快速排序是对起泡排序的一种改进,它的基本思想是,通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,这两部分的记录是分别位于枢轴(刚开始你自己设定的)两边,并且左右两部分的内部也是无序的,只有枢轴在数组中的位置是正确的。这一趟可以确定一个数的位置。对于小白来说,这些话有些废,我刚开始学的时候看书就是这样觉得 还是先看举例过程...原创 2019-12-08 18:00:40 · 357 阅读 · 0 评论