408算法题leetcode--第13天

61. 旋转链表

cpp 复制代码
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution {
public:
    ListNode* rotateRight(ListNode* head, int k) {
        // 思路1:和数组一样做三次翻转
        // 思路2:先连接尾节点和头节点成环,然后返回正数n-k+1个节点
        if(head == nullptr) return nullptr;
        int len = 1;
        ListNode* p = head;
        while(p->next){
            len++;
            p = p->next;
        }
        p->next = head;
        k %= len;
        // 移动n-k到目标节点的前一个节点
        p = head;
        for(int i = 0; i < len - k - 1; i++){
            p = p->next;
        }
        head = p->next;
        p->next = nullptr;
        return head;
    }
};

206. 反转链表

cpp 复制代码
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution {
public:
    ListNode* reverseList(ListNode* head) {
        // 思路1:头插法
        // 思路2:两两互换
        ListNode *pre = nullptr, *cur = head, *temp = nullptr;
        while(cur){
            temp = cur->next;
            cur->next = pre;
            pre = cur;
            cur = temp;
        }
        return pre;
    }
};
相关推荐
Tisfy1 小时前
LeetCode 1927.求和游戏:抵消+看最值
java·leetcode·游戏·题解·博弈论
玖玥拾1 小时前
LeetCode 125 验证回文串
算法·leetcode
Asize8 小时前
146. LRU 缓存
算法
Asize8 小时前
543. 二叉树的直径
算法
lemon_sjdk8 小时前
ObjectProperty
java·开发语言·算法
Zentceh8 小时前
AI-ISP在夜视机芯中的应用:从传统ISP到PixelClean全彩夜视的进化
人工智能·科技·算法·计算机视觉·车载系统·视频·智能硬件
xier_ran8 小时前
【infra之路】AWQ 详解:激活感知权重保护,让 W4A16 量化精度超越 GPTQ
线性代数·算法·机器学习·量化·infra
亦皓ai9 小时前
AI时代后端工程(二):AI把代码写得越来越快,我却越来越不敢让它直接开工了
人工智能·算法·机器学习·搜索引擎·transformer
玖玥拾10 小时前
LeetCode 392 判断子序列
笔记·算法·leetcode
重生之后端学习11 小时前
239. 滑动窗口最大值[困难]✅
java·数据结构·算法·leetcode·职场和发展