Java数据结构与算法之栈(动力节点Java学院整理)
短信预约 -IT技能 免费直播动态提醒
stack,中文翻译为堆栈,其实指的是栈,heap,堆。这里讲的是数据结构的栈,不是内存分配里面的堆和栈。
栈是先进后出的数据的结构,好比你碟子一个一个堆起来,最后放的那个是堆在最上面的。
队列就是排队买苹果,先去的那个可以先买。
栈
public class Stack { private int array[]; private int max; private int top; public Stack(int max){ this.max = max; array = new int[max]; top = 0; } public void push(int value){ if(isFull()){ System.out.println("full,can not insert"); return; } array[top++]=value; } public int pop(){ return array[--top]; } public boolean isEmpty(){ if(top == 0){ return true; } return false; } public boolean isFull(){ if(top == max ){ return true; } return false; } public void display(){ while(!isEmpty()){ System.out.println(pop()); } } public static void main(String[] args) { Stack s = new Stack(5); s.push(1); s.push(3); s.push(5); s.push(5); s.push(5); s.display(); } }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
Java数据结构与算法之栈(动力节点Java学院整理)
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
Java数据结构与算法之栈(动力节点Java学院整理)
stack,中文翻译为堆栈,其实指的是栈,heap,堆。这里讲的是数据结构的栈,不是内存分配里面的堆和栈。栈是先进后出的数据的结构,好比你碟子一个一个堆起来,最后放的那个是堆在最上面的。队列就是排队买苹果,先去的那个可以先买。栈public
2023-05-31
Java数据结构与算法之选择排序(动力节点java学院整理)
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。代码public class ChoseSort { //constructor without parameters
2023-05-31
Java数据结构之队列(动力节点Java学院整理)
队列的定义:队列(Queue)是只允许在一端进行插入,而在另一端进行删除的运算受限的线性表。 (1)允许删除的一端称为队头(Front)。(2)允许插入的一端称为队尾(Rear)。(3)当队列中没有元素时称为空队列。(4)队列亦称作先进先出
2023-05-31
Java FileDescriptor总结_动力节点Java学院整理
FileDescriptor 介绍FileDescriptor 是“文件描述符”。FileDescriptor 可以被用来表示开放文件、开放套接字等。以FileDescriptor表示文件来说:当FileDescriptor表示某文件时,我
2023-05-31
Java concurrency之集合_动力节点Java学院整理
Java集合包Java集合主体内容包括Collection集合和Map类;而Collection集合又可以划分为List(队列)和Set(集合)。1. List的实现类主要有: LinkedList, ArrayList, Vector,
2023-05-31
Java线程之join_动力节点Java学院整理
join()介绍join() 定义在Thread.java中。join() 的作用:让“主线程”等待“子线程”结束之后才能继续运行。这句话可能有点晦涩,我们还是通过例子去理解: // 主线程public class Father exten
2023-05-31
struts2数据处理_动力节点Java学院整理
Struts2框架框架使用OGNL语言和值栈技术实现数据的流转处理。值栈就相当于一个容器,用来存放数据,而OGNL是一种快速查询数据的语言。 值栈:ValueStack一种数据结构,操作数据的方式为:先进后出 OGNL : Object-G
2023-05-31
了解redis中RDB结构_动力节点Java学院整理
RDB文件是在redis的“快照”的模式下才会产生,那么如果我们理解了RDB文件的结构,是不是让我们对“快照”模式能做到一个心中有数呢???
一、RDB结构剖析首先呢,我们要对RDB文件有一个概念性的认识,比如下面画的图一样:从图中,我们大
2022-06-04
Java Collections集合继承结构图_动力节点Java学院整理
面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。数组虽然也可以存储对象,但长度是固定的;集合长度是可变的,数组中可以存储基本数据类型,集合只能存储对象。集合类的特点
2023-05-31
Spring MVC之WebApplicationContext_动力节点Java学院整理
如果你使用了listener监听器来加载配置,一般在Struts+Spring+Hibernate的项目中都是使用listener监听器的。如下Java代码 org.springf
2023-05-31
redis数据类型_动力节点Java学院整理
Redis支持5种数据类型,它们描述如下:
Strings - 字符串Redis的字符串是字节序列。在Redis中字符串是二进制安全的,这意味着他们有一个已知的长度,是没有任何特殊字符终止决定的,所以可以存储任何东西,最大长度可达512兆。
2022-06-04
Java concurrency集合之ArrayBlockingQueue_动力节点Java学院整理
ArrayBlockingQueue介绍ArrayBlockingQueue是数组实现的线程安全的有界的阻塞队列。线程安全是指,ArrayBlockingQueue内部通过“互斥锁”保护竞争资源,实现了多线程对竞争资源的互斥访问。而有界,则
2023-05-31
Java concurrency集合之LinkedBlockingDeque_动力节点Java学院整理
LinkedBlockingDeque介绍LinkedBlockingDeque是双向链表实现的双向并发阻塞队列。该阻塞队列同时支持FIFO和FILO两种操作方式,即可以从队列的头和尾同时操作(插入/删除);并且,该阻塞队列是支持线程安全。
2023-05-31
Java concurrency集合之CopyOnWriteArraySet_动力节点Java学院整理
CopyOnWriteArraySet介绍它是线程安全的无序的集合,可以将它理解成线程安全的HashSet。有意思的是,CopyOnWriteArraySet和HashSet虽然都继承于共同的父类AbstractSet;但是,HashSet
2023-05-31
Java concurrency集合之ConcurrentLinkedQueue_动力节点Java学院整理
ConcurrentLinkedQueue介绍ConcurrentLinkedQueue是线程安全的队列,它适用于“高并发”的场景。它是一个基于链接节点的无界线程安全队列,按照 FIFO(先进先出)原则对元素进行排序。队列元素中不可以放置n
2023-05-31
Java concurrency集合之ConcurrentSkipListMap_动力节点Java学院整理
ConcurrentSkipListMap介绍ConcurrentSkipListMap是线程安全的有序的哈希表,适用于高并发的场景。ConcurrentSkipListMap和TreeMap,它们虽然都是有序的哈希表。但是,第一,它们的线
2023-05-31
Java concurrency集合之ConcurrentSkipListSet_动力节点Java学院整理
ConcurrentSkipListSet介绍ConcurrentSkipListSet是线程安全的有序的集合,适用于高并发的场景。ConcurrentSkipListSet和TreeSet,它们虽然都是有序的集合。但是,第一,它们的线程安
2023-05-31
Java concurrency之互斥锁_动力节点Java学院整理
ReentrantLock介绍ReentrantLock是一个可重入的互斥锁,又被称为“独占锁”。顾名思义,ReentrantLock锁在同一个时间点只能被一个线程锁持有;而可重入的意思是,ReentrantLock锁,可以被单个线程多次获
2023-05-31
Java concurrency集合之ConcurrentHashMap_动力节点Java学院整理
ConcurrentHashMap介绍ConcurrentHashMap是线程安全的哈希表。HashMap, Hashtable, ConcurrentHashMap之间的关联如下: HashMap是非线程安全的哈希表,常用于单线程程序中
2023-05-31
Java新特性之Nashorn_动力节点Java学院整理
Nashorn是什么Nashorn,发音“nass-horn”,是德国二战时一个坦克的命名,同时也是java8新一代的javascript引擎--替代老旧,缓慢的Rhino,符合 ECMAScript-262 5.1 版语言规范。你可能想j
2023-05-31