数据结构
文章平均质量分 77
新手入门数据结构篇
小明同学01
正视自己的野心,切实行动,脚踏实地.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二叉树的实现与理解 [数据结构与算法入门]
这里根据深度优先搜索原则,先搜左边,如果找到某个左子树节点的值为x,返回左子树的指针,找不到去右子树接着找,还找不到则说明不存在,返回空指针。想要一个函数实现两个功能,就要在返回值下功夫,常规查找我们使用bool,这里我们使用树的结点指针接收,对查找到的返回值可以直接修改。每次递归后,子节点都会当成根节点向下递归,打印值在的位置,就是每个根的值的位置。依然是从根节点进入,逐层减1,当k的值变为1时,就递归到了所求层。申请一个节点存放数据,后续的左右子树还用不上,进行置空。原创 2025-05-04 22:39:42 · 928 阅读 · 0 评论 -
堆排序,人群中的TOPK问题【数据结构与算法入门】
在学习完堆的相关操作后,我们开始着手堆两个相当重要的应用,堆排序以及排名问题。原创 2025-05-02 11:37:51 · 414 阅读 · 0 评论 -
堆的实现【数据结构与算法入门】
上篇文的末尾我们简单研究了一下堆的物理结构以及逻辑结构这一篇让小编带着大家一起深入探索一下。原创 2025-04-29 11:26:44 · 957 阅读 · 0 评论 -
树?树!【数据结构与算法入门】
前边几篇小编和大家一起研究学习了线性表,栈和队列。这一篇我们将共同进入树的领域原创 2025-04-26 21:24:48 · 910 阅读 · 1 评论 -
排队的智慧“队列”[数据结构与算法入门]
而对于栈,因为其先入先出的特点,我们要进行尾差头删,所以用链表来实现会更加的方便一些。我们用cur从头结点开始遍历,提前保存下一个节点然后将当前节点FREE掉,遍历结束后,将头尾指针置空,此时权限已经还给操作系统,再使用会出现野指针报错非法访问。本质就是链表的头删,但是在结构体中我们多定义了一个尾指针,所以当只剩一个数据,头尾都指向一个数据的时候,需要我们将尾指针也一并置空。队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出。出队列:进行删除操作的一端称为。原创 2025-04-25 14:59:09 · 442 阅读 · 0 评论 -
数据结构与算法入门_用C语言实现栈
首先我们将数据元素,栈顶指针,数组容量装在结构体里,对于一会进站出站的操作我们设置动态数组,根据需要调整数组大小,同时对结构体重命名,方便后续书写。核心关键点在于检查栈够不够用,我们将栈顶与数组数量进行对比,当相等时,说明栈满,利用realoc给数组扩容二倍。一道C语言时期的经典试题,在学习了栈之后,利用先入后出的特点是不是变得游刃有余了呢。栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。利用判空进行断言,确保栈里有元素,随后通过top--实现精准删除。压栈:栈的插入操作叫做进栈。原创 2025-04-24 08:30:00 · 300 阅读 · 0 评论 -
一道题掌握链表!leetcode随机链表的复制【深度解析】
题目要求我们复制一个随机链表,每个节点除了指向下一个节点的指针,还有一个随机指针指向任意位置。而难点就在这里,复制的随机指针应该指向自己复制的新链表而不能指向原随机链表。原创 2025-04-23 02:00:31 · 388 阅读 · 0 评论 -
数据结构与算法入门_链表OJ
cur走到之前记住的下一个节点,继续处理,循环往复。用cur逐个检查节点,每次循环,先记住当前节点的下一个节点next,防止断开后找不到路。如果当前节点值不是val: 不用删,prev跟上当前节点,cur继续往后走。让前一个节点直接跳过当前节点,删掉当前节点,cur移到下一个位置。把新头设为下一个节点,删掉当前节点,cur从新头重新开始检查。所有节点检查完,返回处理后的链表头,确保所有该删的节点都删了。所有节点处理完后,newhead就是反转后的新头,直接返回它。,请你反转链表,并返回反转后的链表。原创 2025-04-18 08:00:00 · 285 阅读 · 0 评论 -
数据结构与算法入门_单链表
这段代码像“倒着拼积木”,每次取最大的积木放在最后,直到所有积木拼完。既高效又优雅地解决了数组合并问题!以上就是本篇博客全部内容啦,有任何不足欢迎大家在评论区交流指正。原创 2025-04-17 08:00:00 · 963 阅读 · 0 评论 -
数据结构与算法入门_顺序表
数据结构(Data Structure)是计算机存储,组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。没有一种单一的数据结构对所有用途都有用,所以我们要学习各种各样的数据结构,如:线性表,树,图,哈希等等。1.2什么是算法算法就是定义良好的计算过程,他取一个或一组的值为输入,并产生出一个或一组值作为输出。简单来说算法就是一系列的计算步骤,用来将输入数据转化成输出结果1.3数据结构与算法的重要性。原创 2025-04-16 02:40:29 · 863 阅读 · 0 评论
分享