61. Rotate List
2016-04-21 09:45
253 查看
#include <iostream> using namespace std; struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; class Solution { public: ListNode* rotateRight(ListNode* head, int k) { if(!head) return head; int n=0; ListNode *temp=head; while(temp) { n++; temp=temp->next; } k=k%n; if(k==0) return head; int i=0; temp=head; while(1) { i++; if(i==n-k) break; temp=temp->next; } ListNode *returnptr=temp->next; temp->next=NULL; temp=returnptr; while(temp->next) { temp=temp->next; } temp->next=head; return returnptr; } };
相关文章推荐
- JQuery中2个等号与3个等号的区别
- 基于微信的分布式系统分析
- 这个离职原因一说出来就糟糕了!
- Hibert变换的C语言及数组的大小
- C# Convert.ToInt32()与int.Parse()的区别
- Android常用正则工具类
- 迷宫问题
- js中 NaN、 null 及 undefined 的区别
- android studio svn上传项目
- 未能将网站配置为使用ASP.NET4.5(待解决)
- 在没有jre环境下运行jar程序
- java web Spring mvc 分页实现
- 人人都看得懂的正则表达式教程
- 10分钟掌握XML、JSON及其解析
- 给一个字符串数组,判断其是否是首尾相连的
- InnoDB: Error: log file ./ib_logfile0 is of different size 50331648 bytes
- NGUI的ScrollView平滑移动到指定位置
- sphinx 原理及实现
- IntelliJ Idea 常用快捷键列表
- c++实验4-利用循环求和