基本数据结构——栈、队列和链表
来源:互联网 发布:java开源网 编辑:程序博客网 时间:2024/06/05 14:25
栈(stack)实现的是一种依照先进先出(last—in,first-out,LIFO)原则的结构,也就是说最后放入的元素总是最先被取出。
队列(queue)实现的是一种依照先进先出(first-in,first-out,FIFO)原则的结构,也就是说最先放入的元素总是最先被取出。
至于为什么会存在这两种如此简单的结构,是因为我们在日常生活中经常采用上面的两个原则来处理一些数据。
栈上的插入(Insert)经常被称做压入或入栈(PUSH);删除元素操作(Delete)经常被称作弹出(POP),另外检查栈是否为空的函数是(StackIsEmpty)。
以下代码是基于数组的栈实现,以及简单的测试入栈操作。
至于队列的Enqueue于Dequeue操作类似建议大家自己动手敲一下吧。
链表见下节博文。
#include<iostream>bool StackIsEmpty(int* s,int top) {if (top == -1)return true;else return false;}void Push(int* s, int top, int x) {top = top + 1;s[top] = x;}int Pop(int* s,int top) {if (StackIsEmpty) {std::cout << "underflow" << std::endl;return 0;}else{top = top - 1;return s[top + 1];}}int main() {int s[5]{ 1,2,3,4 };int top = 3;for (auto x : s) {std::cout << x << "";}std::cout << std::endl;Push(s, 3, 5);for(auto x:s){std::cout << x << "";}std::cout << std::endl;}
阅读全文
0 0
- 基本数据结构——栈、队列和链表
- &10 基本数据结构——栈,队列和链表
- 基本数据结构--表、栈和队列
- 基本数据结构——栈、队列和单链表
- “栈和队列”之队列--基本数据结构
- 基本数据结构——队列
- 数据结构——基本数据结构之队列
- 数据结构——基本数据结构之队列
- 二 数据结构栈和队列基本定义
- 基本数据结构之栈和队列
- 基本数据结构(栈和队列)
- 基本数据结构(栈和队列)
- 数据结构->栈和队列的基本操作
- 数据结构之栈和队列---队列的基本操作
- CLRS第10章 基本数据结构——栈和队列
- 用Python实现基本数据结构——栈与队列
- 数据结构之链表队列基本操作
- 基本数据结构(4) —— 队列
- Android BroadcastReceiver监听手机短信
- Tomcat——学习心得
- KL距离>=0的证明
- hf 主页布局
- poj1012Joseph(约瑟夫环)
- 基本数据结构——栈、队列和链表
- java实现并查集算法
- [bzoj3531][Sdoi2014]旅行 树链剖分
- c++string
- 二叉树的最大深度
- VMware里面的linux和windows互相传文件
- Q124:PBRT-V3,“路径追踪”积分器(14.5章节)
- axure原型设计之翻牌
- C语言编程技巧-signal(信号机制) 与中断