Data Structures
文章平均质量分 54
Jonah_Meng
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构二叉树之第五章习题1-4
本关任务:编写一个程序统计二叉树叶子节点的个数。原创 2024-12-16 15:59:06 · 427 阅读 · 0 评论 -
算法3.11-3.19 队列操作和实现(头歌)
输入格式:两行,第一行是一个正整数n,表示出队和入队的次数,第二行是n次出队和入队操作序列,其中1表示入队,0表示出队,如果是入队,则1后跟一个大写或小写字母。输入格式:两行,第一行是一个正整数n,表示出队和入队的次数,第二行是n次出队和入队操作序列,其中1表示入队,0表示出队,如果是入队,则1后跟一个大写或小写字母。输出格式:遍历队列内容,从队首到队尾输出所有字母,如果队为空,则输出"Queue Empty!输出格式:遍历队列内容,从队首到队尾输出所有字母,如果队为空,则输出"Queue Empty!原创 2024-11-09 15:56:02 · 318 阅读 · 0 评论 -
树(概念+性质)
终于说到了新的数据结构:树原创 2024-10-29 23:49:25 · 604 阅读 · 0 评论 -
设计循环队列
这里注意,由于我们要区分空和满的判断条件,所以我们是有一个空间不用的,因此我们储存数据的个数最多为k,但实际容量为k+1。今天我们用数组实现循环队列。循环队列的前提是已经确定了空间多少。原创 2024-10-10 17:52:00 · 230 阅读 · 0 评论 -
用两个栈实现队列
用两个队列去实现栈的时候,我们是通过两个队列来回给元素来实现的,就是一个是空表另外一个就不是。当然这个题也可以这样写,但是没必要,而且太麻烦。原创 2024-10-05 00:06:54 · 415 阅读 · 0 评论 -
用两个队列实现栈
2.我之前一直对结构体没有太多归属感,其实就是用的不熟练,今天的结构体其实是一层又一层这样去使用的,比如MyStack这个结构体里面,有两个队列,而这两个队列其实是用另外一个包含头尾指针的结构体来表示的,而且我们如果想要插入节点,节点也是结构体,我天,好多结构体。而且今天又清晰了一个以前有点模糊的点,就是结构体的名不能代表他的地址,要想找他的地址必须用&,当然如果本来这个量就是结构体指针的话那就直接用就ok。主要是不要跟数组搞混,因为数组的名字是代表这个数组的起始地址的,不用对数组名用&。原创 2024-10-03 17:28:35 · 481 阅读 · 0 评论 -
队列Queue(初识)
如果用数组,每次进行头删之后,需要把后面的所有元素都向前移动一格,费时费力,所以不好。综上所述,我们选择用链表来实现我们的队列。比如我们在排队买冰淇淋,后来的人只能排到最后一个,而队列其实也是个线性表,所以对应的功能其实就是“尾插”。而只有当前排在第一个的人才可以买冰淇淋,买完之后它就不在这个队伍中了,对应到我们的代码中其实就是“头删”。本来这篇文章昨天就要写,奈何昨天写的代码出现了bug,让AI解决了半天也没有什么结果,我只能说,AI对于一些细致领域的东西的准确性还是要继续提高。原创 2024-09-26 20:27:22 · 392 阅读 · 0 评论 -
栈的应用:括号匹配问题
很明显没有我们想的那么简单,我们所想的方法是准确的,但不全面。比如如果只有右括号,那么栈是空的,我们可以直接返回false,或者如果比较完了之后栈还没空,说明左括号比右括号多,那就不可能匹配了。这两种情况都要在代码中体现出来。那这个时候其实我们就可以想到用栈来存储所有的左括号,然后每次从栈顶拿出一个与右括号进行比较就行了,这是利用栈只能从栈顶出来的特性。我们代码的主要逻辑是把所有false的情况直接列出来,然后其他情况就直接返回ture就好了,否则会很麻烦,这样的思想以后也常用。原创 2024-09-24 22:16:41 · 231 阅读 · 0 评论 -
栈(Stack)初识
今天呢,学习了一种新的数据结构:栈。在没学过之前呢,觉得这玩意还挺神秘的,今天一接触,发现它其实就是一种特殊的线性表。为啥说它特殊呢,因为它只允许在固定的一端进行插入和删除操作,这一端呢我们称之为“栈顶”,而另一端就被称之为“栈底”。它的特点是:后进先出LIFO(Last In First Out)你可以把它形象的想象为一个羽毛球筒或弹夹,每次拿出的时候只能拿最上面的一个。了解完它的逻辑之后,更重要的是如何用代码实现。原创 2024-09-22 10:59:02 · 308 阅读 · 0 评论
分享