- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
public static int sizeIter(LinkedStack p)
{
int s= 0;
if(p.isEmpty())
return 0;
else
{
while(p.isEmpty()==false)
{
p.pop();
s++;
}
System.out.println("iter" + s);
return s;
}
}
//Here's my driver
public static void main(String[] args) {
LinkedStack l = new LinkedStack();
System.out.println("Case 1: Size(Iter) = "+ sizeIter(l));
l.push(5);
l.push(4);
l.push(3);
l.push(2);
l.push(1);
System.out.println("Case 2: Size(Iter) = "+ sizeIter(l));
输出总是0。我不明白。我正在尝试使用迭代方法找到链接堆栈的大小。我检查了 linkedstack 正在推送元素,但大小仍然没有改变。
最佳答案
一般情况
我在我的默认Java库中没有找到“LinkedStack
”,但我找到了正常的Stack
在Java.util
.
此答案基于Java.util.Stack
通过使用Stack
而不是LinkedStack
你的代码工作得非常好(情况 1 = 0 和情况 2 = 5)我在驱动程序中更改了一行:Stack<Integer> l = new Stack<Integer>();
也许你的方法是致命的
您的方法在计数时清空堆栈。这是因为这两种方法都会修改内存中的同一位置,并且您是通过删除堆栈的元素来计数的。
如何查看:
添加行 System.out.println("Case 3: Size(Iter) = "+ sizeIter(l));
在驱动程序的末尾
=> 这将返回“情况 3:Size(Iter) = 0”
其他解决方案
.size()
Stack
的方法.脚注else
迭代方法的一部分是不必要的,因为如果 if
评估true
该方法无论如何都会重新运行。
关于java - 输出的linkedstack大小始终为0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47797735/
我在这些问题上遇到了困难。我有 4 个问题要让它工作。我的其中两个是正确的,但另外两个是错误的。它是 java 的 toString(): LLNode node = top; Str
所以,我开始自己在 LinkedStack 上编码,我最终缩小了错误发生的范围,但我不知道如何修复它。我会在这里发布我的代码和错误,看看是否有人能弄清楚。谢谢 LinkedNode.h #pragma
所以我有这个链接节点堆栈(简称链接堆栈)的代码,它让我非常困惑!我明天要考试,这让我很困惑!所以看看: class Node { T item;
我正在制作一个游戏,每当我要按下新游戏按钮时,我的 Canvas 不会更新,但我的 LinkedStack 值已经更新。据说它已经打乱了 LinkedStack 值。 [编辑] -在我的代码中添加了一
我做了很多研究,但所有这些要么是递归,要么不是我目前正在寻找的。我正在尝试使用 LinkedStack 而不是递归创建 N-Queens 程序,LinkedStack 将采用对象 NQueen,而不仅
我对这项作业有一个小问题:我打算完成 LinkedStack 实现并确保 peek、isEmpty 和 size 方法按照 Stack 接口(interface)中的定义实现。我相信我的大部分工作都正
我有一个 LinkedStack.h 并且我已经定义了一些方法。我的问题是如何将该文件包含在 Qt creator 中以及如何编写它以便我可以在我的 GUI 程序中定义一个 LinkedStack 类
如何在 O(1) 中为 LinkedStack 编写一个 pop() 方法?我的 LinkedStack 类中有两个私有(private)数据成员:ListNode* head 和 ListNode*
我是一名优秀的程序员,十分优秀!