【leetcode】Rotate List(middle)
2024-10-10 05:48:12
Given a list, rotate the list to the right by k places, where k is non-negative.
For example:
Given 1->2->3->4->5->NULL
and k = 2
,
return 4->5->1->2->3->NULL
.
题目关键点:k可能比链表长度还大, 需要获取链表长度len, 用 k % len 获取具体需要移动的数字。
class Solution {
public:
ListNode *rotateRight(ListNode *head, int k) {
if(head == NULL || head->next == NULL) return head;
ListNode *f = head, *t = head;
int len = ;
while(t != NULL && t->next != NULL)
{
len++;
t = t->next;
} int mv =len - k % len; //新的头结点在链表中的位置
f = head;
while(--mv)
{
f = f->next; //找到新的头结点的前一个结点
} t->next = head; //尾巴连上最初的头结点
ListNode * newhead = f->next; //新的头结点
f->next = NULL; //新的尾部 return newhead; }
};
最新文章
- clock()、time()、clock_gettime()和gettimeofday()函数的用法和区别【转】
- CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3(转)
- 最大似然估计(MLE)和最大后验概率(MAP)
- __declspec,__cdecl,__stdcall区别和作用
- Android锁屏软件
- 程氏CMS去掉静态页面的隐藏性版权方法
- ANDROID_MARS学习笔记_S01原始版_020_Mp3player001_歌曲列表
- Markdown写接口文档,自动添加TOC
- IOI1994 北京2008的挂钟 迭代加深
- SSAS数据集Cube不存在或者尚未处理
- 复杂的1秒--图解Google搜索技术
- eclipse搭建maven ssm项目
- 浅析PHP中的闭包和匿名函数
- ASP.NET Core 发布
- Properties类学习笔记
- R8500 MPv2 版本 刷 Kong编译的 ddwrt 后,使用Entware-ng 安装opkg安装第三方软件
- 【python】try...except...后中断程序继续运行
- python学习之----Lambda表达式
- 10个办法让设计小白迅速get海报设计要点!
- HTML <;input>; <;button>; <;submit>;