Redian新闻
>
请教linked list, 删除最后一个节点
avatar
请教linked list, 删除最后一个节点# JobHunting - 待字闺中
b*4
1
如果只知道这个节点的pointer,没有前一个节点的,这个节点又是最后一个,怎么删
啊。谢谢!
avatar
f*i
2
public static LinkList deleteLastIndex(LinkList root)
{
if (root == null || root.next == null)
return null;
LinkList returnRoot = root, nextNode = root.next;
while (nextNode.next != null)
{
nextNode = nextNode.next;
root = root.next;
}
root.next = null;
return returnRoot;
}
avatar
b*4
3
我是说不知道root,不能从头去找,只知道最后一个节点的指针

【在 f*********i 的大作中提到】
: public static LinkList deleteLastIndex(LinkList root)
: {
: if (root == null || root.next == null)
: return null;
: LinkList returnRoot = root, nextNode = root.next;
: while (nextNode.next != null)
: {
: nextNode = nextNode.next;
: root = root.next;
: }

avatar
f*i
4
直接指向null不行吗?
avatar
N*p
5
这个。。。麻烦了。。。
要是中间的点,还可以用后面的点replace这个,但是这是最后一个点,直接把这个点
的值付NULL可以吗?

【在 b******4 的大作中提到】
: 如果只知道这个节点的pointer,没有前一个节点的,这个节点又是最后一个,怎么删
: 啊。谢谢!

avatar
w*x
6
没法删,你不是自己想出来的题吧
avatar
s*r
7
void deleteLast(Node& * pLast)
{
if(NULL == pLast || NULL != pLast -> next)
return;

free(pLast);
pLast = NULL;
}

【在 w****x 的大作中提到】
: 没法删,你不是自己想出来的题吧
avatar
w*x
8

传引用啊, 太痞了

【在 s*********r 的大作中提到】
: void deleteLast(Node& * pLast)
: {
: if(NULL == pLast || NULL != pLast -> next)
: return;
:
: free(pLast);
: pLast = NULL;
: }

avatar
b*i
9
首先,你是想说Node *& pLast吧?
第二,如果一个Node *A指向最后一个node
那么,我p=A
然后deleteLast(p),还是完成不了任务。指向这个最后的node的指针可能很多。所以
这个问题是不可完成的。

【在 s*********r 的大作中提到】
: void deleteLast(Node& * pLast)
: {
: if(NULL == pLast || NULL != pLast -> next)
: return;
:
: free(pLast);
: pLast = NULL;
: }

avatar
G*s
10
同意。
这个是不可能完成的。

【在 b***i 的大作中提到】
: 首先,你是想说Node *& pLast吧?
: 第二,如果一个Node *A指向最后一个node
: 那么,我p=A
: 然后deleteLast(p),还是完成不了任务。指向这个最后的node的指针可能很多。所以
: 这个问题是不可完成的。

avatar
i*7
11
crack coding interview上说过了。这种情况下是无解的。不用想了。。
avatar
a*m
12
也还是没用。参数必须是链表前一个节点这个要求太不正常,如果是随便一个临时变量
就不对。
题目没说是single还是double.

【在 w****x 的大作中提到】
:
: 传引用啊, 太痞了

avatar
f*2
13
只知道最后一个节点,如果是单链表,无法删除。删除实质上是隔离前一个节点和这个
节点的link,如果不能得到这个link,没法操作
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。