第445章 三道题(2 / 2)

是链表,陈博起初没看仔细,现在重新审题才发现有三个小问。

[从头到尾打印一份单链表]

[在不遍历链表的前提下删除一个无头单链表的非尾节点]

[在不遍历链表的前提下在无头单链表中的一个节点前插入另一个节点]

可惜是手写,如果换做电脑输入的话码起来会快很多,因为单链表有指向性,前一个节点只能指向下一个节点,因此最简单的实现办法就是递归,先遍历再输出。

“好久没手写代码了。”

陈博书写之余还得留心字母的大小写,不一定是换行顶格就非要大写,代码的括号也是重中之重,有的是[],有的是(),还有的是{},他特地描多了几笔,好让它们看上去略有不同。

删除非尾节点通过遍历是很好实现的,这里故意增加了难度,不过单链表只有next指针,只指向下一个元素,如果要删除其中一个节点,从删除目标节点的下一个节点入手是个不错的切入点。

首先,把要删除节点的下一个节点值赋予删除节点,再修改删除节点的指向,最后删除下一个节点,就可以实现要求。

代码里有很多特殊符号,陈博在写时连大小长度都统统考虑进去,尽量让它们的比例看上去跟电脑里的差不太多。

他没留意时间,反正吴忧没喊停,自己接着做便是。

“啊嚏~”