![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 91
喜欢草莓熊的bear
爱学习的bear
展开
-
二叉树的介绍(1)
本期内容介绍二叉树这个数据结构,包括二叉树的一些概念和性质。二叉树的内容比较多,所有我分了很多期来介绍。我们做到点到为止即可!!下期预告堆的实现。原创 2024-07-30 23:24:53 · 795 阅读 · 28 评论 -
通过“ 栈 ”实现“ 队列 ”
在上期博客中我们通过在队列里面进行数据倒换来成功的实现了栈,那我们试试能不能通过在两个栈里面倒换数据来实现队列呢?根据之前的实现“ 栈 ”的经验我们可以重新定义一个结构体里面储存着两个栈就可以了,一个用来入数据一个用来出数据ST pushst;ST popst;} MyQueue;我们完成栈和队列的互相实现,我们对栈和队列的理解就加深了一点。后面也会在带来一些关于队列和栈的题目,从而进一步加深。原创 2024-07-25 18:27:28 · 1125 阅读 · 26 评论 -
数据结构之通过“ 队列 ”实现的“ 栈 ”功能。
本节内容是利用“ 队列 ”先进先出的特点 实现 “ 栈 ” 先进后出。我们这里的代码都是基于队列来实现的,我们要掌握这个倒换数据思路来解题。!下期见ヾ(•ω•`)o。原创 2024-07-14 23:12:14 · 1121 阅读 · 43 评论 -
数据结构之“队列”(全方位认识)
上期博客介绍了” 栈 “这个数据结构,他具有先进后出的特点。本期介绍“ 队列 ”这个数据结构,他具有先进先出的特点。目录前言一、队列1.1队列的概念及结构1.2队列的实现1.2.1队列结构体定义1.2.2初始化和销毁1.2.3队尾插入和队头删除1.2.3.1队尾插入1.2.3.2队头删除1.2.4获取队头与队尾数据1.2.5返回队列里面的元素个数1.2.6队列判空1.3测试代码1.4代码展示头文件实现功能文件.c总结下期预告通过栈和队列互相实现对方的功能。原创 2024-07-07 15:59:55 · 1115 阅读 · 15 评论 -
数据结构之“栈”(全方位认识)
栈是一种数据结构,具有" 后进先出 "的特点 或者也可见说是 ” 先进后出 “。大家一起加油吧冲冲冲!!因为我们这次实现的栈是基于数组实现的,我们就可以参考顺序表的结构体定义来改进。我们了解的栈的定义发现,栈顶元素一直有被提及。我们要定义栈顶,其次我们定义数组,但是为什么我们这边是用指针呢?其实这里数组等价于指针的,在学习指针的时候我们学习过所以我们就像理解指针那一样的思路就可以了。还有就是结构体里面定义指针动态内存管理、高效的内存管理、还方便栈的各种操作。这边提到了内存,也要定义一个数来计算是否满了。原创 2024-07-06 22:16:55 · 1161 阅读 · 7 评论 -
数据结构之“刷链表题”
通过一些例题来复习一下之前学习的链表。这些都题还不错,值得我们掌握。加油加油,请持续关注bear!!🌹🌹。原创 2024-07-01 22:38:49 · 771 阅读 · 3 评论 -
单链表经典算法题2
这次介绍的题会比上次更有难度哦,宝宝们系好安全带。咱们出发了!做这种链表题一定要画图,结合图做起来比较好。好了我们的单链表经典算法题就结束了,不记得了就来bear这回顾哦。后期还会有其他题目讲解,有不同的想法也可以写道评论区,有写错的地方望指正。宝宝们晚安🌹🌹。原创 2024-06-20 23:19:36 · 648 阅读 · 7 评论 -
数据结构之“算法的时间复杂度和空间复杂度”
宝宝们,跟上bear的节奏继续进步!今天我们学习的目标:1.算法复杂度的理解2.知道时间、空间复杂度的概念3.学会使用大O表示法4.计算常见复杂度例题学习复杂度是为了让我们在解决一些问题会有多种想法,通过计算复杂度来选择最优的思路。复杂度分析对于设计和评估算法的效率非常重要。通常我们希望设计出时间复杂度和空间复杂度都尽可能低的算法,以提高算法的性能和适用性。复杂度分析是算法设计和分析的核心内容之一。原创 2024-06-20 23:19:15 · 1004 阅读 · 8 评论 -
数据结构之”单链表“
这里对int 和 struct SListNode 重新定义了一下方便后面使用。这里SL是单链表的缩写。//节点元素类型定义,方便修改typedef struct SListNode//单链表int data;//该节点的存储元素//下一节点的地址,为了找到下一节点}SLTNode;单链表看似复杂,但是我们只要滤清思路就可以很快的理解。单链表功能比较多,还希望各位热爱学习计算友友们下去一定要自己下去试试,不会了就来看看我和画画图,大家一起加油一起进步。原创 2024-06-04 23:13:41 · 738 阅读 · 10 评论 -
数据结构之实现“通讯录”
通讯录”是基于顺序表的基础上实现的项目,要熟悉顺序表才比较容易看懂和完成通讯录项目。在这个博客里面不会来介绍之前的东西,之前没看懂的可以到这边数据结构之”顺序表“。加上之前顺序表的两个文件一共是五个文件。test.c是实现联系人储存的文件,contact.c是通讯录的源文件,contact.h是通讯录的头文件,seqlist.c和seqlist.h是之前的顺序表的源文件和头文件。(源文件是功能实现的代码,头文件是用来包含一些头文件和定义一些东西)我们这里的联系人信息包含:姓名、性别、年龄 、电话、地址。原创 2024-06-02 12:35:03 · 1164 阅读 · 6 评论 -
数据结构之“双向链表”
这里结构体里面有两个指针,分别指向前一个节点和下一个节点。typedef struct ListNode//双向链表是(带哨兵位双向循环链表) 单链表是(不带哨兵位单向不循环链表)//节点存放的数据//指向下个节点的指针//指向上个节点的指针相比与单链表和顺序表,双向链表还是比较简单的,双向链表的功能代码实现都大致相同。一定要自己去实现一下双向链表,其次每完成一个功能就要测试防止后面报太多错误。原创 2024-06-13 18:06:16 · 769 阅读 · 4 评论 -
单链表经典算法题 1
做这种链表的问题最好就是画图理清思路,然后再写代码。后还会为大家讲解单链表经典算法题 2。会持续更新的哦!!!原创 2024-06-13 18:05:51 · 978 阅读 · 4 评论 -
【数据结构之“顺序表”】
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或者多种特定关系的数据元素集合。数据结构反映了数据的内部构成,即数据由那部分构成,以及数据元素之间呈现的结构。指针、结构体、动态内存管理,大家最好提前进行复习一下。1)能够储存各种数据2)储存数据方便查询3)要多看,多练习,整理好思路。原创 2024-05-24 22:24:46 · 1074 阅读 · 5 评论