day38(12.19)——leetcode面试经典150

92. 反转链表 II

92. 反转链表Ⅱ

题目:

题解:

java 复制代码
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode reverseBetween(ListNode head, int left, int right) {
        ListNode cur = head;
        ListNode part = new ListNode();
        int count = 1;
        Map<Integer, ListNode> map = new HashMap<>();
        while(cur != null) {
            map.put(count++, new ListNode(cur.val));
            cur = cur.next;
        } 
        cur = new ListNode();
        ListNode h = cur;
        for(int i=1;i<left;i++) {
            cur.next = map.get(i);
            cur = cur.next;
        }
        for(int i=right;i>=left;i--) {
            cur.next = map.get(i);
            cur = cur.next;
        }
        for(int i=right+1;i<count;i++) {
            cur.next = map.get(i);
            cur = cur.next;
        }
        return h.next;
    }
}
相关推荐
9号达人1 小时前
支付成功订单却没了?MyBatis连接池的坑我踩了
java·后端·面试
搬砖魁首2 小时前
ZK-ALU-在有限域上实现乘法和除法
算法·zk·alu·域运算·算术逻辑单元·模乘·蒙哥马利模约简
iAkuya2 小时前
(leetcode)力扣100 17缺失的第一个正数(哈希)
算法·leetcode·哈希算法
断剑zou天涯2 小时前
【算法笔记】树状数组IndexTree
java·笔记·算法
sonadorje2 小时前
ECC公钥生成过程
算法·安全
声声codeGrandMaster2 小时前
线性回归实战下与深度学习概念
深度学习·算法·线性回归
sin_hielo2 小时前
leetcode 2092(排序+bfs)
算法·leetcode·宽度优先
C雨后彩虹2 小时前
斗地主之顺子
java·数据结构·算法·华为·面试
鸽鸽程序猿2 小时前
【刷题册】二
算法