Rotate List

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>size的情况,即倒数的k%size个。

代码:

class Solution {
public:int getLen(ListNode* head){int res=0;ListNode* p=head;while(p!=NULL){++res;p=p->next;}return res;}ListNode *rotateRight(ListNode *head, int k) {if(head==NULL||k==0) return head;int size=getLen(head);if(k>size) k=k%size;if(k==size||k==0) return head;int i=size-k;int j=1;ListNode* p=head;while(j<i){p=p->next;++j;}ListNode* q=p->next;ListNode* resHead=q;p->next=NULL;while(q->next!=NULL){q=q->next;}q->next=head;return resHead;}
};

 

转载于:https://www.cnblogs.com/fightformylife/p/4229899.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/263917.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#4.0和VS2010新特性(三)

VS2010之所以那么强大&#xff0c;究其原因是其背后有着强大的C#4.0作为后台支撑。和以往的所有版本相比&#xff0c;C#4.0的动态性大大增强——dynamic就是一个非常明显的例子&#xff1a;&#xff08;一&#xff09;dynamic初探&#xff1a; 以前因为某些特殊原因&#xff0c…

java spark环境配置文件_JAVA, SCALA, HADOOP, SPARK里的JAVA_HOME和环境变量设置

/etc/profile里添加的内容&#xff1a;export JAVA_HOME/jdkexport HADOOP_HOME/hadoopexport SCALA_HOME/scalaexport SPARK_HOME/sparkexport PATH$PATH:$JAVA_HOME/binexport PATH$PATH:$SPARK_HOME/binexport PATH$PATH:$HADOOP_HOME/binexport PATH$PATH:$SCALA_HOME/bine…

#20175201 实验五 网络编程与安全

一、实验五 网络编程与安全-1 1.实验要求&#xff1a; 两人一组结对编程&#xff1a; &#xff08;1&#xff09;参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA &#xff1b; &#xff08;2&#xff09;结对实现中缀表达式转后缀表达式的功能 MyBC.java&#xff1b…

轻轻松松,一键获取3000个外链

轻轻松松&#xff0c;一键获取3000个外链 http://report.loganrockmarketing.com/backlinker/idx.html 打开以上网址&#xff1a; 在方框里输入你要推广的网址&#xff08;不要加前面的http://) 然后点击start/continue backlinking按钮 接下来&#xff0c;坐享其成吧。转载于:…

Scala学习思维导图

转载于:https://blog.51cto.com/thunderkeg/1605365

使用git上传代码到github远程仓库

一、新建代码库注册好github登录后&#xff0c;首先先在网页上新建代码库。 点击右上角“&#xff0b;”→New repository 进入如下页面&#xff1a;按照要求填写完成后&#xff0c;点击按钮创建代码库创建成功。 接下来我们查看一下刚刚创建好的代码库&#xff0c;点击右上角的…

java web开发myeclipse_【java项目实战】一步步教你使用MyEclipse搭建java Web项目开发环境(一)...

首先&#xff0c;在开始搭建MyEclipse的开发环境之前&#xff0c;还有三步工具的安装需要完成&#xff0c;只要在安装配置成功之后才可以进入下面的java Web项目开发环境的搭建。1、安装工具第一步&#xff0c;下载并安装JDK&#xff0c;到官网上下载安装即可&#xff0c;之后需…

对于大型公司项目平台选择j2ee的几层认识

对于大型公司项目平台选择j2ee的几层认识&#xff08;一&#xff09; 对于大型公司项目平台选择j2ee的几层认识&#xff08;二&#xff09; 对于大型公司项目平台选择j2ee的几层认识(三) 对于大型公司项目平台选择j2ee的几层认识(四)转载于:https://www.cnblogs.com/Wolves/arc…

当前项目规划

3.2、当前项目规划 完成项目最基本的用户权限管理&#xff0c;即添加用户&#xff0c;添加角色&#xff0c;用户登录后根据权限的不同获取不同的菜单。转载于:https://www.cnblogs.com/seem111111/p/10945125.html

java 常量池 和 堆 的关系_Java堆、栈和常量池以及相关String的详细讲解(经典中的经典)...

博客分类&#xff1a; Java综合一&#xff1a;在JAVA中&#xff0c;有六个不同的地方可以存储数据&#xff1a;1. 寄存器(register)。 这是最快的存储区&#xff0c;因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限&#xff0c;所以寄存器由编译器根…

仿淘宝首页图片切换

资料来源:http://www.cnblogs.com/cloudgamer/archive/2008/07/06/SlideTrans.html?page2#pagedcomment 效果展示: 测试环境:IE8 (待续) 程序代码&#xff1a; 代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR…

docker高级应用之动态扩展容器空间大小

docker容器默认的空间是10G,如果想指定默认容器的大小&#xff08;在启动容器的时候指定&#xff09;&#xff0c;可以在docker配置文件里通过dm.basesize参数指定&#xff0c;比如docker -d --storage-opt dm.basesize20G是指定默认的大小为20G&#xff0c;具体参数可以参考ht…

关于ICallbackEventHandler的疑问

近日&#xff0c;由于需要&#xff0c;我写了一个webcontrol,并在实现了ICallbackEventHandler,目的是根据传进来的参数进行逻辑处理&#xff0c;然后返回值。我下面的例子目的是从1到5调用异步函数&#xff0c;然后在回调函数将1到5这几个数值相加。但是&#xff0c;由于调用异…

NIO学习--缓冲区

Buffer其实就是是一个容器对象&#xff0c;它包含一些要写入或者刚读出的数据。在NIO中加入Buffer对象&#xff0c;体现了新库与原I/O的一个重要区别。在面向流的I/O中&#xff0c;您将数据直接写入或者将数据直接读到Stream对象中。在NIO库中&#xff0c;所有数据都是用缓冲区…

二分图匹配之匈牙利算法

二分图的基本概念&#xff1a; 二分图又称作二部图&#xff0c;是图论中的一种特殊模型。 设G(V,E)是一个无向图&#xff0c;如果顶点V可分割为两个互不相交的子集(A,B)&#xff0c;并且图中的每条边(i&#xff0c;j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j …

使用javascript打开模态对话框

1. 标准的方法 <script type"text/javascript"> function openWin(src, width, height, showScroll){ window.showModalDialog (src,"","location:No;status:No;help:No;dialogWidth:"width";dialogHeight:"height";sc…

nagios监控系统搭建!!

http://kerry.blog.51cto.com/172631/107831/转载于:https://www.cnblogs.com/iLumia/p/4237640.html

Go-select和switch的使用区别

Go-select和switch的使用区别 1 package main2 3 import (4 "fmt"5 "time"6 )7 8 func main() {9 i : 2 10 fmt.Print("Write ", i, " as ") //Write 2 as two 11 switch i { 12 case 1: 13 fmt.Prin…

java 终结此段代码并重新运行_Java垃圾回收

好久没看关于java的书了, 最近, 看了James Gosling的<>, 做了一些读书笔记. 这部分是关于垃圾回收的.1.垃圾回收对象是使用new创建的, 但是并没有与之相对应的delete操作来回收对象占用的内存. 当我们完成对某个对象的使用时, 只需停止该对象的引用:->将引用改变为指向…

Enumerable#zip特性

看到文章Zip operator in Linq with .NET 4.0&#xff0c; Enumerable#zip是Ruby 1.8开始出现的特性&#xff0c;.NET 4/Silverlight 4也有这样的特性。与 Ruby 类似&#xff0c;Enumerable 同样关注你的感受&#xff0c;它为一些行为提供了多个名称。这主要是为了降低学习难度…