链表操作

复习下链表的几种操作。以下直接讲相应的思路,代码的话另外自行实现。

假设有如下链表:(有一头指针 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

还有哦,有兴趣可以关注下本人的公众号啦~比较方便手机端查看文章啦~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值