java算法学习笔记--栈结构篇
来源:互联网 发布:易约软件 编辑:程序博客网 时间:2024/06/05 03:25
1什么是栈结构
栈结构其实就是一种线性结构,可分为顺序栈结构,和链式栈结构,遵循着后进先出的原则。
2栈的基本操作
入栈:将数据保存到栈顶的操作。进行入栈前修改栈顶引用,使其向上移一个元素位置,然后将数据保存到栈顶
引用所指的位置。
出栈:将栈顶的数据弹出的操作。通过修改栈顶引用,使其指向栈的下一个元素。
3java代码表示栈结构
class Data3{
string name;
int age;
}
class stacktype
{
static final int maxlen=50;
Data3[] data=new Data3[maxlen+1];
int top;
}
初始化栈结构
stacktype stinit(){
stacktype p;
if(p=new stacktype()!=null)
{
p.top=0;
return p;
}
return null;
}
判断空栈
boolean stisempty(stacktype s)
{
boolean t;
t=(s.top==0);
return t;
}
判断栈满
boolean stisfull(stacktype s){
boolean t;
t=(s.top=maxlen);
return t;
}
清空栈
void stclear(stacktype s){
s.top=0;
}
释放空间
void stfree(stacktype s){
if(s!=null)
{
s=null;
}
}
入栈
int pushst(stacktype s,Data data){
if(s.top+1)>maxlen)
{
system.out.print(溢出);
return 0;
}
s.data[++s.top]=data;
return 1;
}
出栈
Data3 popst(stacktype s)
{
if(s.top==0){
system/out.print(栈为空);
system.exit(0);
}
return (s.data[s.top--]);
}
读结点数据
Data3 peekst(stacktype s){
if(s.top==0){
system.out.print(栈为空):
system.exit(0);
}
return (s.data[s/top];
}
- java算法学习笔记--栈结构篇
- java算法学习笔记--队列结构
- java算法学习笔记--线性表篇
- 树结构的自定义及基本算法(Java数据结构学习笔记)
- java算法学习笔记--排序算法篇(上)
- <学习笔记> Java排序算法
- Java存储结构-JVM规范学习笔记
- JAVA学习笔记-基本程序设计结构
- java学习笔记-基本程序设计结构
- java学习笔记之基本控制结构
- Java学习笔记之Eclipse项目结构
- 数据结构学习笔记--栈结构
- NO3.java学习笔记(顺序结构、判断结构、选择结构、循环结构、函数)
- 【数据结构与算法学习笔记】PART3 线性结构(除向量外,数组、栈、队列、链表)
- stl学习笔记之泛型算法的结构
- 【学习笔记】算法竞赛:chapter 2 循环结构程序设计
- 散列hash算法与结构学习笔记
- 网易 | 数据结构和算法 | 学习笔记02:线性结构
- selenium中文文档
- Android创建窗口(一)创建应用窗口
- DataTable的一些总结
- MarkDown编辑器是什么
- Java基础加强总结(一)——注解(Annotation)
- java算法学习笔记--栈结构篇
- springmvc 使用validation校验无法加载properties文件,及验证信息乱码的问题
- Unity3D学习记录——日深日落
- 堆
- shell语法的简单学习以及编写一个简单的进度条
- iOS开发 HTTP协议详解
- 工作中遇到的各种问题
- Qt中的各种控件简介
- CSS3 --- 选择器