首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
java
blob
filter
command
hashcode
include
dockerfile
int
triggers
callback
perl
function
replace
httpclient
yaml
sum
frameworks
email
stream
search
runtime
solr
less
get
web
iostream
dll
shell
hashtable
window
match
import
timestamp
case
typescript
regex
bit
hook
数组
datetime
usb
python2
merge
python
copy
jar
byte
substring
buffer
main
emoji
tree
chat
lua
metadata
uri
cSharp
c语言
hash
ip
input
export
request
uml
express
flutter
rsa
plugins
foreach
range
random
spring
expression
cPlusPlus
web3
integer
jsp
schema
text
当前位置:
开发笔记
>
编程语言
> 正文
java实现栈,队列数据结构
作者:独角式恋爱牛仔 | 来源:互联网 | 2023-10-12 13:35
java实现栈publicclassStackForInt{储存数据的栈privateNodeStackForInt[];栈的最大容量privateintmaxSize
//java实现栈
public class StackForInt
{
// 储存数据的栈
private Node
StackForInt[];
// 栈的最大容量
private int maxSize;
// 栈的当前容量
private int size;
//分别保存node中最大值和最小值,在栈push和pop时都要来保存这个值,特别是在pop时,当出栈的数是最大或者最小时,就需要更新
//maxNode,minNode.代码中还没有实现,后续增加。
private T maxNode;
private T minNode;
public T getMax(){
return maxNode;
}
public T getMin(){
return minNode;
}
// 不传参数,默认栈的最大容量为100
public StackForInt() {
this(100);
}
public StackForInt(int maxSize) {
// 如果传入的参数小于或等于0,则设置最大容量为100
if (maxSize <&#61; 0)
maxSize &#61; 100;
this.maxSize &#61; maxSize;
}
// 初始化栈&#xff0c;在堆中先申请好内存空间
public void initStackForInt() {
Node
[] StackForIntNodes &#61; new Node[maxSize];
StackForInt &#61; StackForIntNodes;
for (int i &#61; 0; i
StackForInt[i] &#61; new Node
();
}
// 栈的当前大小为0
size &#61; 0;
}
// 栈的基本方法之一&#xff0c;获得栈顶元素
public Node
getTop() {
// 栈中没有元素&#xff0c;则返回空
if (size &#61;&#61; 0)
return null;
return StackForInt[size-1];
}
// 栈的基本方法之一&#xff0c;入栈
public boolean push(Node
StackForIntNode) {
// 栈已满&#xff0c;入栈失败
if (size >&#61; maxSize)
return false;
size&#43;&#43;;
StackForInt[size - 1] &#61; StackForIntNode;
return true;
}
// 栈的基本方法之一&#xff0c;出栈
public Node
pop() {
// 如果栈已空&#xff0c;则返回null
if (size <&#61; 0)
return null;
size--;
return StackForInt[size];
}
// 栈是否为空
public boolean isEmpty() {
if (size <&#61; 0)
return true;
return false;
}
// 栈的基本方法之一&#xff0c;遍历栈
public void traverse() {
for (int i &#61; 0; i
System.out.println(StackForInt[i].get());
}
}
/**
* &#64;param args
*/
public static void main(String[] args) {
StackForInt
StackForInt &#61; new StackForInt
();
StackForInt.initStackForInt();
StackForInt.push(new Node
("Anybody1"));
StackForInt.push(new Node
("Anybody2"));
StackForInt.push(new Node
("Anybody3"));
StackForInt.traverse();
}
static class Node
{
//要存储的信息
private T nodeinfo;
public Node(){
this(null);
}
public Node(T info){
this.nodeinfo &#61; info;
}
//set方法
public void set(T info){
this.nodeinfo &#61; info;
}
//get方法
public T get(){
return nodeinfo;
}
}
}
java
队列
int
push
get
static
main
string
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
get
MQTT技术周报:硬件连接与协议解析
本周开发笔记重点介绍了在新项目中使用MQTT协议进行硬件连接的技术细节,涵盖其特性、原理及实现步骤。 ...
[详细]
蜡笔小新 2024-12-27 11:30:44
get
Java并发编程:LinkedBlockingQueue的实际应用
本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ...
[详细]
蜡笔小新 2024-12-27 18:51:49
get
POJ 3259 Bellman-Ford算法实现
本文提供了使用Java实现Bellman-Ford算法解决POJ 3259问题的代码示例,详细解释了如何通过该算法检测负权环来判断时间旅行的可能性。 ...
[详细]
蜡笔小新 2024-12-25 20:03:22
shell
Java 实现系统托盘最小化:SWT与JDK6的解决方案
本文探讨了在Java中实现系统托盘最小化的两种方法:使用SWT库和JDK6自带的功能。通过这两种方式,开发者可以创建跨平台的应用程序,使窗口能够最小化到系统托盘,并提供丰富的交互功能。 ...
[详细]
蜡笔小新 2024-12-25 15:03:50
get
Java 类成员初始化顺序与数组创建
本文探讨了Java中类成员的初始化顺序、静态引入、可变参数以及finalize方法的应用。通过具体的代码示例,详细解释了这些概念及其在实际编程中的使用。 ...
[详细]
蜡笔小新 2024-12-27 19:39:42
shell
新浪笔试题
1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ...
[详细]
蜡笔小新 2024-12-27 19:32:17
get
java编写的简易计算器
主要用了2个类来实现的,话不多说,直接看运行结果,然后在奉上源代码1.Index.javaimportjava.awt.Color;im ...
[详细]
蜡笔小新 2024-12-27 18:18:10
get
Unity 客户端框架设计:UI管理系统的构建
本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ...
[详细]
蜡笔小新 2024-12-27 10:28:40
get
深入理解org.neo4j.helpers.collection.Iterators.single()方法及其应用
本文详细介绍了Java中org.neo4j.helpers.collection.Iterators.single()方法的功能、使用场景及代码示例,帮助开发者更好地理解和应用该方法。 ...
[详细]
蜡笔小新 2024-12-28 10:51:55
get
优化ListView性能
本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ...
[详细]
蜡笔小新 2024-12-28 10:36:30
get
Handling Null Object Encoding in OAuth 1.0a API Implementation
Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ...
[详细]
蜡笔小新 2024-12-28 08:54:34
int
Spring Boot DevTools 实现项目自动重启功能
本文介绍了如何使用 Spring Boot DevTools 实现应用程序在开发过程中自动重启。这一特性显著提高了开发效率,特别是在集成开发环境(IDE)中工作时,能够提供快速的反馈循环。默认情况下,DevTools 会监控类路径上的文件变化,并根据需要触发应用重启。 ...
[详细]
蜡笔小新 2024-12-28 04:42:15
get
Weight the Tree(树形dp)
题目Link题目学习link1题目学习link2题目学习link3%%%受益匪浅!----- ...
[详细]
蜡笔小新 2024-12-26 15:55:56
window
中央电视台电影频道节目预告及优化分析
本文详细介绍了中央电视台电影频道的节目预告,并通过专业工具分析了其加载方式,确保用户能够获取最准确的电视节目信息。 ...
[详细]
蜡笔小新 2024-12-25 21:01:14
int
Tetris 排名系统 (拓扑排序与并查集的应用)
本题旨在通过给定的评级信息,利用拓扑排序和并查集算法来确定全球 Tetris 高手排行榜。题目要求判断是否可以根据提供的信息生成一个明确的排名表,或者是否存在冲突或信息不足的情况。 ...
[详细]
蜡笔小新 2024-12-24 21:03:51
独角式恋爱牛仔
这个家伙很懒,什么也没留下!
Tags | 热门标签
java
blob
filter
command
hashcode
include
dockerfile
int
triggers
callback
perl
function
replace
httpclient
yaml
sum
frameworks
email
stream
search
runtime
solr
less
get
web
iostream
dll
shell
hashtable
window
RankList | 热门文章
1
C语言中的字符串与常用字符串函数
2
异步复位、同步复位及异步复位同步释放详解
3
绿色守护、黑域、PackageDisablerPro 哪个更好用?
4
实现滑动界面及过渡动画的方法
5
2月4日的重要事件回顾
6
Python 爬虫实战:获取京东手机价格和参数
7
解决Bootstrap引入问题导致的空白页
8
SharePoint List的List Template ID明细表
9
DirectShow Filter 开发指南
10
如何在荣耀手机上使用虚拟定位
11
驱动程序的基本结构
12
GTK+2: 实现透明背景下的小部件叠加绘制
13
C#编程教程:二进制逆序操作的多种方法详解
14
如何在DedeCMS专题页节点文档中调用自定义模型字段?
15
Hadoop Datanode DataXceiver 错误处理问题
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有