gpt4 book ai didi

java - 链表中的反向方法

转载 作者:行者123 更新时间:2023-11-30 09:10:42 25 4
gpt4 key购买 nike

我对我的链表程序做了很多开发。当我想反转我的列表时,它说 java heap space error(java.lang.OutOfMemoryError)

这是我的逆向方法:

    private void reverse()
{
Node start1=null;
Node ptr1=start;
while(ptr1!=null)
{
Node nnode=new Node();
nnode.data=ptr1.data;

if(isEmpty())
{
start1=nnode;
}
else
{
nnode.link=start1;
start1=nnode;
}
}
Node temp=start1;
while(temp!=null)
{
System.out.println(temp.data);
temp=temp.link;
}
}

最佳答案

内存不足的原因是这个循环:

while(ptr1!=null)
{
Node nnode=new Node();
nnode.data=ptr1.data;

if(isEmpty())
{
start1=nnode;
}
else
{
nnode.link=start1;
start1=nnode;
}
}

它不断创建新的 Node 直到 ptr1 变为 null,但它永远不会推进 ptr1

您需要更改循环条件以检查 start1,或者更改循环主体以将 ptr1 移动到下一个节点。

关于java - 链表中的反向方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22436382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com