hgq's docs
主页
ES6-阮一峰 (opens new window)
Vue文档 (opens new window)
Axios文档 (opens new window)
Vue Router (opens new window)
Vuex文档 (opens new window)
面试题-Vue (opens new window)
面试题-JS (opens new window)

guoguoqiqi

漫不经心的向往
主页
ES6-阮一峰 (opens new window)
Vue文档 (opens new window)
Axios文档 (opens new window)
Vue Router (opens new window)
Vuex文档 (opens new window)
面试题-Vue (opens new window)
面试题-JS (opens new window)
  • 反转链表
    • 无重复字符的最长子串
    • LRU 缓存
    • 数组中的第K个最大元素
    • K个一组翻转链表
    • 三数之和
    • 手撕快速排序
    • 最大子数组和
    • 两数之和
    • 合并两个有序链表
    • 环形链表
    • 二叉树的层序遍历
    • 买卖股票的最佳时机
    • 二叉树的锯齿形层序遍历
    • 相交链表
    • 有效的括号
    • 二叉树的最近公共祖先
    • 合并两个有序数组
    • 搜索旋转排序数组
    • 最长回文子串
    • 岛屿的数量
    • 全排列
    • 字符串相加
    • 高频算法题
    guoguoqiqi
    2022-03-16

    反转链表

    给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

    示例 1:

    image

    输入:head = [1,2,3,4,5]
    输出:[5,4,3,2,1]
    
    1
    2

    # 解法:双指针迭代

    /**
     * Definition for singly-linked list.
     * function ListNode(val, next) {
     *     this.val = (val===undefined ? 0 : val)
     *     this.next = (next===undefined ? null : next)
     * }
     */
    /**
     * @param {ListNode} head
     * @return {ListNode}
     */
    var reverseList = function(head) {
    
        // 代表已经排好序的,初始为空
        let prev = null;
        // 代表还没排序的,初始就是整个链表
        let curr = head;
    
        // 不存在未排序的节点时结束遍历
        while(curr) {
            // 每次排一个,保存剩余的节点
            const next = curr.next;
            // 把已经排好序的拼接在当前节点后面
            curr.next = prev;
            // 上一步拼接完成后,更新prev
            prev = curr;
            // 更新未排序的剩余节点,也就是最上面保存的
            curr = next;
        }
    
        // 返回完成排序后的节点
        return prev;
    
    };
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34

    来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/reverse-linked-list/

    无重复字符的最长子串→

    最近更新
    01
    vuex数据持久化怎么做
    05-22
    02
    vue的动态路由怎么配置使用
    05-22
    03
    vue权限控制一般怎么做
    05-22
    更多文章>
    Theme by Vdoing | Copyright © 2022-2022 Guoquoqiqi | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式