Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 顶层堆栈的初始化值是多少_Java_Data Structures - Fatal编程技术网

Java 顶层堆栈的初始化值是多少

Java 顶层堆栈的初始化值是多少,java,data-structures,Java,Data Structures,当我练习堆叠时,我对初始化顶部有一个疑问。 有人能建议什么是好的做法吗,取top=0或top=-1 我是Java的新手,现在正在学习。 希望有人能给我解释一下。 提前感谢。这取决于您使用的堆栈实现阵列,LinkedList。Use可以使用top=-1或top=0来表示空堆栈,没有这样的硬规则。如果您使用的是基于数组的stacke.g A[n],那么最好使用top=-1作为数组索引,在java中大小为n的数组从0到n-1。 对于第一次推送操作,top=-1+1=0,请参阅元素A[0]0是一个良好的

当我练习堆叠时,我对初始化顶部有一个疑问。 有人能建议什么是好的做法吗,取top=0或top=-1

我是Java的新手,现在正在学习。 希望有人能给我解释一下。
提前感谢。

这取决于您使用的堆栈实现阵列,LinkedList。Use可以使用top=-1或top=0来表示空堆栈,没有这样的硬规则。如果您使用的是基于数组的stacke.g A[n],那么最好使用top=-1作为数组索引,在java中大小为n的数组从0到n-1。
对于第一次推送操作,top=-1+1=0,请参阅元素A[0]

0是一个良好的开始值。因为您希望初始值是第一个值。你为什么要从-1开始?我想这两个都可以。如果从top=0开始,那么top总是等于堆栈上的元素数。我不明白为什么to被向下投票。是不是他的英语没有达到如此高的水平?或者他似乎没有完全掌握堆栈的概念?我认为这两个问题都是可以解决的,因为他的英语已经相当不错了,而且只要点击一下,就可以轻松解决问题@K.辛杜:看看这个。jenkov对top的意思是堆栈的最高位置。一旦向堆栈中添加一个元素,它就成为顶部位置。在java中,不能使用top变量初始化堆栈。玩得高兴重新。否决票:我猜没有代码,问题是基于意见的,OP可能自己做了一些研究@用户3469861使用编辑器功能将代码标记为代码,将文本标记为文本。这使你的文章更具可读性;