数据结构
文章平均质量分 75
yoouuung_
码农进阶…
展开
-
数据结构初阶--复杂度分析
复杂度分析原创 2022-11-19 12:10:41 · 244 阅读 · 0 评论 -
数据结构值庖丁解牛八大算法排序,附动图和源码(快排-中B)
具体的思想是:借助栈,实现先进后出的特点。直到遍历完所有区间,整个序列有序。这个方法的目的也是需要找keyi位置,定义两个指针prev,cur,cur++,prev++,直到找到比key所指向值大的cur停下,此时prev++,cur和prev所指向的值进行交换,直到cur走到空,把key所指向的值和prev的值进行交换。此时,找到了第一个keyi。再在快排中递归,直到所有数变得有序。原创 2023-06-07 17:31:01 · 74 阅读 · 1 评论 -
数据结构之庖丁解牛八大排序算法,附动图和源码(快排-中A)
挖坑法的思想是,先将第一个数据存放在临时变量k中,形成一个坑位,然后R往右走,找比基准值小的,放在坑中,此时这个R原来指的位置为坑,L往右走,找比基准值大的,放在坑中,一直到L,R相遇,将k中的值放到坑里,此时这个坑就是我们要找的keyi,左边序列比key小,右边序列都比key大,再去递归这两个区间,相当于一种二叉树前序遍历的方法。,同时,在区间很小的时候,再使用递归,此时再去开辟函数的栈帧,有一些杀鸡用宰牛刀的意思,可以使用直接插入的方法进行优化实现代码如下。本文主要将快排的递归方法,非递归方法见下节。原创 2023-06-07 17:28:17 · 508 阅读 · 0 评论 -
数据结构之庖丁解牛八大排序算法,附动图说明过程(上)
假设有一组序列: 9 1 2 5 7 4 8 6 3 5 ,将这个序列按照从小到大的顺序进行排序,思想是:先前两个数进行排序,end的位置在9,tmp为1,tmp<end,a[end]向后挪动,插入这个tmp,第二次,排序 则为1 9 2,end的位置在9,tmp的位置在2,进行排序,插入交换位置,第三次 1 2 9 5 依次类推,直到end的位置到3,5为tmp,遍历完整个序列结束排序。基本思想:每次从待排序的数据元素中选出最小(或者最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。原创 2023-06-07 15:36:47 · 383 阅读 · 1 评论 -
数据结构之树,实现堆的增删改查接口及堆的应用
本文主要介绍了树的概念及性质,堆的概念及增删改查的接口,堆的应用topK问题,技术有限,如有错误请指正。原创 2023-05-19 22:35:04 · 420 阅读 · 2 评论 -
数据结构之栈,实现栈的增删改查
本文主要介绍了栈的定义,以及常用栈的使用接口,技术有限,如有错误请指正。原创 2023-05-09 20:33:23 · 285 阅读 · 0 评论 -
数据结构之双向链表,实现双向链表的增删改查
本文主要介绍了双向链表以及链表的一些接口函数,技术有限,如有错误请指正。原创 2023-05-08 21:21:50 · 701 阅读 · 0 评论 -
数据结构之队列,实现队列的增删改查
队列:只允许在一端进行插入,另外一端进行删除数据的特殊线性表,队列具有先进先出入队列:在进行插入操作的一端称为队尾出队列:在进行删除操作的一端称为队头本文主要记录了用链表实现队列,以及对队列的增删改查,技术有限,如有错误请指正。原创 2023-05-06 16:13:45 · 1209 阅读 · 0 评论 -
数据结构之顺序表,实现顺序表的增删改查
本文主要介绍了顺序表的结构,以及对顺序表的操作:增删改查等。如有错误请指正。原创 2023-04-18 11:52:26 · 286 阅读 · 0 评论 -
数据结构之链表,实现单链表的增删查改
本文主要介绍了链表,以及对链表的操作:增删查改等,如有错误,敬请指正。原创 2023-04-07 11:02:16 · 1112 阅读 · 4 评论