数据结构C/C++实现
文章平均质量分 70
C/C++实现
Aspect of Twilight
现阶段我是拿来主义,力争学习国内外科技前沿技术。
后半生是奉献主义,将自己所学奉献给国家,让中华民族屹立于世界民族之林!
展开
-
189. 轮转数组(C语言)
189. 轮转数组 - 力扣(LeetCode)原创 2021-11-23 10:33:02 · 679 阅读 · 0 评论 -
Ⅳ栈和队列(C实现)
一、栈1.1栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈,出数据也在栈顶。1.2栈的实现栈的实现一般可以使用数组或者链表实现,相对而言数组的结构实现更优一些。因为数组在尾上插入数据的代价比较小。 Note:数组栈...原创 2021-11-11 21:09:48 · 622 阅读 · 0 评论 -
4.1OJ题:括号匹配问题
力扣https://leetcode-cn.com/problems/valid-parentheses/点击上面网址可查看原题题目给定一个只包括 '(',')','{','}','[',']'的字符串 s ,判断字符串是否有效。有效字符串需满足:1)左括号必须用相同类型的右括号闭合。2)左括号必须以正确的顺序闭合。解答首先我们先把栈的接口函数完善进去typedef char STDataType;typedef struct Stack{ STDataType*.原创 2021-11-11 21:29:15 · 4263 阅读 · 0 评论 -
4.2OJ题: 用队列实现栈
力扣https://leetcode-cn.com/problems/implement-stack-using-queues/点击上面网址可查看原题题目请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。实现 MyStack 类:void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回栈顶元素。int top() 返回栈顶元素。boolean empty() 如果栈是空的,返回 tr原创 2021-11-12 20:00:26 · 570 阅读 · 0 评论 -
4.3OJ题:用栈实现队列
力扣https://leetcode-cn.com/problems/implement-queue-using-stacks/点击上面网址可查看原题题目请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回原创 2021-11-12 20:16:44 · 563 阅读 · 0 评论 -
4.4OJ题:设计循环队列
力扣https://leetcode-cn.com/problems/design-circular-queue/点击上面网址可查看原题题目设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。你的实原创 2021-11-12 20:57:44 · 73 阅读 · 0 评论