爪哇2博客
爪哇2博客

在Java中使用链接列表实现堆栈

如果您想练习数据结构和算法程序,可以通过 100多个数据结构和算法面试问题.

在此程序中,我们将看到如何使用 链表 在Java中。
The 叠放 is an abstract data type that demonstrates Last in first 出 (LIFO) behavior. We will implement the same behavior using 链表.
叠放
叠放有两个最重要的操作:

  • Push :我们将元素推送到链表的开头以演示堆栈的推送行为。
  • Pop :我们将删除链表的第一个元素,以演示Stack的弹出行为。

爪哇程序:

让我们创建一个Java程序来使用链接列表创建堆栈。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
 
组织.Arpit.爪哇2blog;
 
上市 LinkedListStack {
私人的 节点 ; //第一个节点
 
//嵌套类以定义链表节点
私人的 节点 {
整型 ;
节点 下一页;
}
 
上市 LinkedListStack() {
= 空值;
}
 
//从列表的开头删除值以演示堆栈的行为
上市 整型 流行音乐() 抛出 LinkedListEmptyException {
如果 ( == 空值) {
LinkedListEmptyException();
}
整型 = .;
= .下一页;
返回 ;
}
 
//将值添加到列表的开头以演示堆栈的行为
上市 虚空 (整型 ) {
节点 老头 = ;
= 节点();
. = ;
.下一页 = 老头;
}
 
上市 静态的 虚空 主要( args[])
{
LinkedListStack 生命= LinkedListStack();
生命.(20);
生命.(50);
生命.(80);
生命.(40);
生命.(60);
生命.(75);
系统..打印(“从LinkedList中删除了元素:”+生命.流行音乐());
系统..打印(“从LinkedList中删除了元素:”+生命.流行音乐());
生命.(10);
系统..打印(“从LinkedList中删除了元素:”+生命.流行音乐());
打印列表(生命.);
}
上市 静态的 虚空 打印列表(节点 ) {
节点 温度 = ;
(温度 != 空值) {
系统..格式(“%d”, 温度.);
温度 = 温度.下一页;
}
系统..打印();
}
}
 
/ **
*
*异常,指示LinkedList为空。
* /
 
LinkedListEmptyException 延伸 RuntimeException {
私人的 静态的 最后 serialVersionUID = 1L;
 
上市 LinkedListEmptyException() {
();
}
 
上市 LinkedListEmptyException( 信息) {
(信息);
}
}
 

当您运行上述程序时,将获得以下输出:

从LinkedList中删除的元素:75
从LinkedList中删除的元素:60
从LinkedList中删除的元素:10
40 80 50 20

那’关于使用Java中的链表实现工具堆栈的全部内容。


导入联系人

您可能还喜欢:

分享这个

作者

关注作者

相关文章

  • 9月23日

    使用另一个堆栈对堆栈进行排序

    如果您想练习数据结构和算法程序,可以阅读100多种数据结构和算法程序。在这篇文章中,我们将看到如何使用另一个堆栈对堆栈进行排序。问题给定堆栈,您需要在临时堆栈的帮助下对其进行排序。解决方案:让’s say,  you have […]

  • 9月16日

    爪哇中的堆栈实现

    如果您想练习数据结构和算法程序,则可以解决100多个数据结构和算法面试问题。在这篇文章中,我们将看到如何在Java中使用数组来实现Stack。简介堆栈是抽象数据类型,它演示了后进先出(LIFO)行为。我们将使用数组实现相同的行为。 […]

  • 9月15日

    检查Java表达式中的平衡括号

    如果您想练习数据结构和算法程序,则可以解决数据结构和算法面试问题。在本文中,我们将看到如何检查表达式中的括号是否平衡。可以说,您的表达式为a *(b + c)-(d * e)如果您注意到,上述表达式的括号是平衡的。让我们将另一个表达式设为(a *(b-c)*(d + e)…]

  • 9月10日

    在Java中使用两个队列实现堆栈

    如果您想练习数据结构和算法程序,则可以解决数据结构和算法面试问题。在该程序中,我们将看到如何使用Java中的链接列表实现堆栈。堆栈是抽象数据类型,它演示了后进先出(LIFO)行为。我们将使用两个队列来实现相同的行为。 […]

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

订阅我们的新闻

获取质量教程到您的收件箱。现在订阅。


成为朋友

©2020 爪哇2博客