社区首页 >问答首页 >显示链表中的所有节点

显示链表中的所有节点
EN

Stack Overflow用户
提问于 2013-10-18 20:12:21
回答 2查看 1.3K关注 0票数 1

这是链接列表类的一部分,用于显示所有节点。

此方法试图做的是将前面设置为指针(是的,我使用的是前端而不是head,这并不重要,但我正在实现基于链表的队列)到指针,在这种情况下称为" cur“,并检查cur下一个节点是否为空,如果它没有得到元素(两个部分,份额和价格)并将cur设置为下一个节点,清洗并重复直到下一个cur (在它进入之前)为空,在这种情况下,它退出循环并打印最后的cur(在空的尾/后)。将所有元素添加到s中(通过连接)

代码语言:javascript
代码运行次数:0
复制
public Object displayAll() {
        Node cur = front;
        Object s = null;
        while(cur.getNext() != null) {
             s += cur.getShare() + " @ " + cur.getPrice();
            cur.setNext(cur);
        }
        s += cur.getShare() + " @ " + cur.getPrice();
        return s;
}

输出:它重复第一个元素无数次。预期的输出:我不想重复,而是显示所有节点的所有元素。

我遗漏了什么?有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-18 20:16:28

代码语言:javascript
代码运行次数:0
复制
while(cur.getNext() != null) {             
   s += cur.getShare() + " @ " + cur.getPrice();
   cur = cur.getNext();
}

我已经分配了cur = cur.getNext(),您没有将cur重新分配给下一个节点。我还删除了cur.setNext(cur);

您得到了无限循环,因为在while条件下,您正在检查下一个节点不应该是null,而不是在循环中分配cur = next的位置,因此在第一个节点上和循环上无限地保持。

票数 2
EN

Stack Overflow用户

发布于 2013-10-18 20:14:49

cur.setNext(cur)看起来很可疑,就像在设置一个连接到自身的节点,这显然是一种无限的关系。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19462275

复制
相关文章
单链表:在带头节点单链表中删除(minv, maxv)中的所有节点
链表节点删除,只有标记待删除节点的前驱节点即可; [注]:如果不是带有节点设置一个虚拟节点即可,返回时返回dummy->next。
lexingsen
2022/02/24
1.7K0
删除链表中的节点
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点。传入函数的唯一参数为 要被删除的节点 。
_kyle
2020/12/18
2.4K0
删除链表中的节点
#include<iostream> #include<vector> using namespace std; struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; class Solution { public: void deleteNode(ListNode* node) { node->val = node->
大忽悠爱学习
2021/03/27
2.2K0
单链表:删除带头节点单链表中最小值所有在的节点
思路:用两对前驱和后继节点,分别比较当前节点的前驱和后继以及最小值界定啊的前驱和后继。 遍历完整个链表,删除最小值节点即可。
lexingsen
2022/02/24
7400
单链表:删除带头结点递增有序单链表中开区间(a,b)的所有节点
struct node { int val; node *next; }; void deleteBetweenMaxAndMin(node *head, int minv, int maxv) { node *p = head; node *q = head->next; node *premin = head, *premax = head; node *pmin = head->next, *pmax = head->next; bool flag = false;
lexingsen
2022/02/24
5210
删除链表中的重复节点.
在一个排序的链表中,存在重复的节点,如何删除链表中重复的节点并返回删除后的链表头指针?例如:1->2->3->3->4->4->5,处理后为: 1->2->5。
神奇的程序员
2022/04/10
2.8K0
删除链表中的重复节点.
237 删除链表中的节点
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点。传入函数的唯一参数为 要被删除的节点 。
木瓜煲鸡脚
2021/01/18
1.3K0
237 删除链表中的节点
leetcode - 交换链表中的节点
交换 链表正数第 k 个节点和倒数第 k 个节点的值后,返回链表的头节点(链表 从 1 开始索引)。
江涛学编程
2021/01/28
7950
leetcode - 交换链表中的节点
[leetcode链表系列]2 删除链表中的节点
链表的一个节点是由数据域和指针域构成,指针域的地址值为下个元素的地址。那么我们需要插入或者删除一个元素怎么处理呢?
我是程序员小贱
2020/06/05
1.3K0
统计单链表中的节点数
最近学习Python感觉又回到了刚开始学习Python的现状,学着理论知识,做着笔记,这时应该要学会调整了,或者说是应该去找一些适量的题刷一下,便于记住一些简单的语法知识。小编最开始便是由于学了一些后由于没刷题便忘记了。这里给大家推荐一个python刷题网站,叫Python123,切记刷题不是目的,得知道每次刷题后我又学到了什么。
小Bob来啦
2020/12/15
1.2K0
统计单链表中的节点数
Swift 删除链表中的节点 - LeetCode
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。
韦弦zhy
2018/12/19
1.3K4
237. 删除链表中的节点
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点。传入函数的唯一参数为 要被删除的节点 。 这道题只告诉我们要删除的节点,我们并不知道该节点的上一个节点是什么 class Solution
CaesarChang张旭
2021/06/09
6940
237. 删除链表中的节点
87 - 删除链表中重复的节点
例如:链表1->2->3->4->4->5, 处理后为 1->2->3->4->5
ruochen
2021/06/16
1.6K0
87 - 删除链表中重复的节点
237. 删除链表中的节点
一 题目: 二 思路: 正常来说如果是双链表我们应该是要让当前结点的前一个结点指向当前结点的下一个结点来做到删除该结点的,如果是单链表应该从前面遍历找到要删除的结点; 但是这题只给我们直接访问的当前结点,那可以想到以此把下一个结点的值覆盖当前结点,不改变next指针指向,如果当前结点是最后一个值了,就把当前结点给删除了(这以上我们代码里保留一个pre结点的原因) 三 代码: class Solution { public void deleteNode(ListNode node) {
名字是乱打的
2022/05/13
7270
237. 删除链表中的节点
LeetCode:237 删除链表中的节点
核心在于:比如4->5->6->7 要删除6的话,是吧,题目也说不能删除末尾的是吧,那就只能先把第四个节点的值赋值给上一个节点的值(覆盖),然后是在删除最后一个节点就行了啊. node.next=node.next.next;因为没有第五个节点所以第五个null覆盖掉第四个节点的值就搞定了。
贵哥的编程之路
2020/10/28
7840
LeetCode:237 删除链表中的节点
203. 删除链表中的节点
删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 解:很简单 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ class Solution {
张伦聪zhangluncong
2022/10/26
5870
链表——24. 两两交换链表中的节点
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。
向着百万年薪努力的小赵
2022/12/02
4250
链表——24. 两两交换链表中的节点
LeetCode - 删除链表中的节点 & 移动零
鉴于这次的两题,异常的短,所以再次合二为一。分别是第237,难度简单,以及283题,难度同样简单。
晓痴
2019/10/10
8380
LeetCode - 删除链表中的节点 & 移动零
谈谈数据结构中的链表、节点
今天刷题的时候再次遇到了链表,网上搜了很多关于链表的概念,有些感觉写的不错,有些云里雾里,这里对链表这个结构做个详细的说明。
崩天的勾玉
2021/12/20
7430
谈谈数据结构中的链表、节点
算法篇:链表之删除链表中重复节点
核心点在于如何找到重复节点,有序链表的话,只要下一个节点与当前节点数值一样就是重复节点,直接将当前节点指向下一个节点的下一个节点即可。
灰子学技术
2020/08/04
7160
算法篇:链表之删除链表中重复节点

相似问题

打印链表中的所有节点

20

删除链表中的所有节点

32

删除链表中的所有节点

21

已删除链表中的所有节点

30

计算链表中所有节点的数量

90
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文