复习下链表的几种操作。以下直接讲相应的思路,代码的话另外自行实现。
假设有如下链表:(有一头指针 p 指向 p1 )
(1)链表的遍历操作
while(p){
console.log(p.data);
p = p -> next;
}
(2)链表的插入结点操作(假设在 p1 和 p2 之间插入 s 结点)
即最终表现为:
s -> next = p -> next;
p -> next = s;
(3)链表的删除结点操作(假设删除 p1 和 p2 之间的结点 s)
p -> next = s -> next;
(4)链表逆转操作
即最终表现为:
这里可借助额外的指针结点,假设有 node 指针结点与 result 指针结点
result = null;
while(p) {
node = p;
p = p -> next;
node -> next = result;
result = node;
}
return result
还有哦,有兴趣可以关注下本人的公众号啦~比较方便手机端查看文章啦~