#include <stdio.h> #define NUMBER 100 int push(int* a, int top, int data) { a[++top] = data; return top; } int pop(int* a, int top) { if (top == -1) { ...
分类:
编程语言 时间:
2021-03-29 12:23:07
阅读次数:
0
#1 栈 ##1.1 栈的基本概念 栈(stack)又名堆栈,它是一种 运算受限的线性表。限定 仅在表尾进行插入和删除操作 的线性表。表尾被称为栈顶,相对地,把另一端称为栈底。 ###1.1.1 特点 它的特殊之处在于限制了这个线性表的插入和删除的位置,它始终只在栈顶进行。这也就使得:栈底是固定的, ...
分类:
编程语言 时间:
2020-07-27 23:47:07
阅读次数:
64
栈 用数组实现一个顺序栈 用链表实现一个链式栈 编程模拟实现一个浏览器的前进、后退功能 用数组实现一个顺序栈 class Stack(object): def __init__(self): self.stack=[] def push(self,item): self.stack.append(i ...
分类:
其他好文 时间:
2020-07-19 11:29:50
阅读次数:
48
一、什么是栈(Stack) 首先来说,栈是一种线性表的表现形式,其定义是只允许在栈顶进行插入或者删除的线性表,所以栈就有线性表的表现形式,链式栈和顺序栈。 栈顶(Top):允许进行数据的插入和删除的一端。 栈底(Bottom):不允许进行数据的插入和删除的一端。 空栈:不含任何元素的栈。 由图我们可 ...
分类:
其他好文 时间:
2020-07-13 18:13:56
阅读次数:
57
数组 实现一个支持动态扩容的数组 实现一个大小固定的有序数组,支持动态增删改操作 实现两个有序数组合并为一个有序数组 链表 实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的中间结点 栈 用数组实现一个顺序栈 用链表实现一个链式栈 编程模 ...
分类:
编程语言 时间:
2020-07-05 13:12:20
阅读次数:
89
点击使用幕布网页版查看(含思维导图)[栈] 点击使用幕布网页版查看(含思维导图)[队列] 栈(stack) 特点:操作受限的线性表,只允许在一端插入和删除数据,后进先出 顺序栈,入栈操作有两种情况: 栈空间足够,那么直接入栈就行(定义不涉及内存搬移的入栈操作为simple-push操作,时间复杂度为 ...
分类:
其他好文 时间:
2020-07-03 17:51:42
阅读次数:
67
线性表是一种十分基础且重要的数据结构,它主要包括以下内容:数组、链表、队列、栈,接下来,我将对这四种数据结构做一个详细的总结,附有详细的代码实现,其中对链表实现了十几种常见的操作。希望对你有所帮助。 ...
分类:
编程语言 时间:
2020-06-26 23:52:35
阅读次数:
81
1 #define Max 50 2 #define ElemType int 3 #define OK 1 4 using namespace std; 5 6 typedef struct Stack //顺序栈的定义 7 { 8 int data[Max]; 9 int top; 10 }St ...
分类:
其他好文 时间:
2020-06-26 18:02:19
阅读次数:
49
文章目录 顺序栈的常规操作 定义顺序栈结构体 初始化顺序栈 顺序栈判满 顺序栈判空 计算顺序栈的长度 顺序栈入栈(Push) 顺序栈出栈(Pop) 顺序栈各操作测试 源代码 顺序栈的常规操作 /********************* 顺序栈的常规操作 ********************** ...
分类:
编程语言 时间:
2020-06-25 23:30:31
阅读次数:
124
栈 //用数组实现一个顺序栈 type Stack struct{ arr []int used int capcity int } func NewStack(capicity int) *Stack{ stack := &Stack{} stack.arr = make([]int,capici ...
分类:
其他好文 时间:
2020-06-18 01:34:12
阅读次数:
50