剑指Offer——反转链表(JS实现)

简介: 剑指Offer——反转链表(JS实现)

题目描述

image.png

解题思路

  • 首先使用一个node指针记录头指针
  • 使用while循环遍历链表,将链表中的每个值保存在一个数组中。
  • 然后使用result指针记录头指针,node指针开始往后遍历
  • node指针每遍历一次,将数据域修改为数组.pop
  • 最后返回result指针

实现代码

var reverseList = function(head) {
    // 首先遍历这个链表
    let arr = [];
    let node = head;
    while(head) {
        arr.push(head.val);
        head = head.next;
    }
    let result = node;
    while(node) {
        node.val = arr.pop();
        node = node.next;
    }
    return result;
};
相关文章
|
1月前
《剑指offer》——合并两个排序的链表
《剑指offer》——合并两个排序的链表
|
3月前
剑指 Offer 35:复杂链表的复制
剑指 Offer 35:复杂链表的复制
24 0
|
3月前
|
存储 消息中间件 Kubernetes
剑指offer常见题 - 链表问题(一)
剑指offer常见题 - 链表问题(一)
|
1月前
《剑指offer》——从尾到头打印链表
《剑指offer》——从尾到头打印链表
|
2月前
|
算法
《剑指offer》之从“尾到头打印链表”题解
《剑指offer》之从“尾到头打印链表”题解
14 2
|
3月前
|
算法 JavaScript
|
3月前
|
算法 JavaScript
|
3月前
|
算法 JavaScript
JS算法-链表插入排序
JS算法-链表插入排序
|
3月前
|
算法 JavaScript
|
3月前
|
存储 算法 JavaScript