算法日志(1)------数据结构讲解
来源:互联网 发布:中国银行淘宝卡 编辑:程序博客网 时间:2024/06/07 14:30
算法日志
(2017.11.25第一天)
数据结构:
线性表:数据以一对一的形式存储,每个元素都有唯一的前驱、唯一的后继。
栈:数据的插入、查询、删除只能从栈顶操作。(后进先出)
队列:数据的插入、查询、删除只能在队首/队尾操作。(先进先出)
栈的需求与基本操作:
Top:表示栈顶元素的位置
Stack[i]:表示栈中第I个元素的值
0、初始化
Top=0;
1、插入元素X
Top=top+1;
Stack[top]:=x;
2、判断栈非空
Top>0 ?
3、弹出栈顶元素
If top>0 then
Dec(top);
4、取出栈顶元素
If top>0 then
Exit(stack[top]);
队列的需求与基本操作:
Head、tail:表示队首/队尾的位置
Que[i]:表示队列中第I个元素的位置
0、初始化
Head=1
Tail=0
1、判队列非空
Head<=tail ?
2、在队首/队尾插入元素X
队尾:tail=tail+1
Que[tail]=x;
队首:head-head-1;
Que[head]=x;
3、队首/队尾弹出
队首:if head<=tail head=head+1;
队尾:if head<=tail tail=tail-1;
4、取出队首/队尾元素
队首:if head<=tail exit(que[head]);
队尾:if head<=tail exit(que[tail]);
单调队列*(递增)
对于任意I J,head<=i<=j<=tail
满足:a[que[i]]<=a[que[j]]
单调队列(严格递增)
满足:a[que[i]]<a[que[j]];
(单调栈同上)
单调队列的应用:定区间求最值。
↓
后面的元素比前面的小于等于,前面删除,否则保留。
- 算法日志(1)------数据结构讲解
- 数据结构-算法日志
- 数据结构之---KMP算法讲解
- 数据结构和算法研究日志
- 数据结构学习日志--排序算法
- 数据结构基础 之 递归算法实例讲解
- 数据结构--Dijkstra算法最清楚的讲解
- 数据结构实验之排序五:归并求逆序数(讲解归并排序算法)
- 贪心算法实例讲解(1)
- 数据结构和算法(1)
- 数据结构与算法(1)
- 一个不错的讲解基础数据结构和算法的博客
- hdu1599(floyd算法讲解)
- 排序算法讲解(一)
- 排序算法讲解(二)
- 排序算法讲解(三)
- 《大话数据结构》笔记(1)--数据结构绪论,算法
- 匈牙利算法模板(无算法讲解)
- 前端css知识大全——解读浏览器默认样式
- ubuntu系统用scp向RK3399发送文件
- 文章标题
- Python入门笔记三
- IO流
- 算法日志(1)------数据结构讲解
- 初识http之referer字段
- C/C++语言基础_static,const,sizeof
- Tensorflow学习笔记-变量管理
- Freeswitch 命令和Appliation 应用的介绍
- TensorFlow在线预测
- Cura 2.6.2 在 windows 的离线 编译方法带教程视频
- rnn Attention网络的实现
- JavaScript 数据类型使用小结