leetcode日记(49)旋转链表

其实不难,就是根据k=k%len判断需要旋转的位置,再将后半段接在前半段前面就行。

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) {
        if(head==NULL||k==0) return head;
        ListNode* h=head;
        int len=1;
        while(h->next) {h=h->next;len++;}
        k=k%len;
        if(k==0) return head;
        ListNode* e=head;
        for(int i=0;i<len-k-1;i++) e=e->next;
        ListNode* n=e->next;
        e->next=NULL;
        h->next=head;
        return n;
    }
};
相关推荐
2501_94114979几秒前
面向微服务异步消息队列与可靠投递的互联网系统高可用设计与多语言工程实践分享
leetcode·决策树
天赐学c语言3 分钟前
1.5 - 二叉树中的最大路径 && C++的类型转换
c++·算法·leecode
--JR11 分钟前
015——图(1.图的相关概念与存储)
数据结构·c++·算法·链表·图论
星空露珠18 分钟前
时间罗盘小界面模组
开发语言·数据结构·算法·游戏·lua
小宇的天下35 分钟前
Calibre nmDRC Dimensional Check Operations(ENClosure/EXTernal/INTernal)(16-1)
算法
hz_zhangrl37 分钟前
CCF-GESP 等级考试 2025年12月认证C++五级真题解析
c++·算法·青少年编程·gesp·gesp2025年12月·c++五级
JoannaJuanCV38 分钟前
二维码解码算法:opencv 和 zxing-cpp
人工智能·opencv·算法
Tisfy39 分钟前
LeetCode 1975.最大方阵和:脑筋急转弯
算法·leetcode·矩阵·题解·脑筋急转弯
GeminiJM1 小时前
算法学习常用函数详解
学习·算法
2501_941146321 小时前
多语言分布式任务调度与性能优化实践:Python、Java、Go、C++高效实战方案
leetcode·rabbitmq