栈
晨光微雨
坚持就是胜利✌
展开
-
栈(不定长顺序表)
栈是一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。栈具有记忆作用,对栈的插入与删除操作中,不需要改变栈底指针。 头文件 #pragma once #define INITSIZE 10 typedef struct DStack { ...原创 2019-08-02 17:19:35 · 146 阅读 · 0 评论 -
链栈
头文件 //带头节点链栈,栈顶在第一个数据节点,入栈和出栈都是O(1) #include <stdio.h> #pragma once typedef struct LNode { int data; //struct LNode *top;//不需要栈顶指针,总是第一个数据节点 struct LNode *next; }LNode,*PLSt...原创 2019-08-08 22:51:15 · 87 阅读 · 0 评论 -
两栈共享空间
两个相同类型的栈,可能第一个栈已经满了,但是第二个栈还是空的,将两个相同类型的栈合并在一起,可以节省一部分空间。 数组有两个端点,分别为两个栈的栈底,一个栈的栈底的位置为数组为0的地方,另一个栈的栈底为数组下标为SIZE-1的位置,SIZE为数组的长度。两个栈如果增加元素,就是两端点向中间延伸。 只要两个栈顶指针不碰面,元素就可以一直进栈。 头文件 #pragma once...原创 2019-08-09 22:45:19 · 434 阅读 · 0 评论