Rotate List
来源:互联网 发布:python thread sleep 编辑:程序博客网 时间:2024/04/30 13:09
1.题目
给定一个链表,旋转链表,使得每个节点向右移动k个位置,其中k是一个非负数
给出链表1->2->3->4->5->null和k=2
返回4->5->1->2->3->null
2.算法
这是一道链表操作的题,就是用runner和Walker定位到要旋转的那个点,以下个点为开头,以当前点为结尾重组链表,需要注意的点就是旋转的结点数可能超过链表长度,所以我们要对这个进行取余
public ListNode rotateRight(ListNode head, int n) { // write your code here if (head == null) { return null; } ListNode walker = head; ListNode runner = head; int idx = 0; while (runner != null && idx < n) { runner = runner.next; idx++; } if (runner == null) { n %= idx; idx = 0; runner = head; while (runner != null && idx < n) { runner = runner.next; idx++; } } while (runner.next != null) { walker = walker.next; runner = runner.next; } runner.next = head; ListNode newHead = walker.next; walker.next = null; return newHead; }
0 0
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- rotate-list
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- Rotate List
- linux 下 解压 win zip 文件乱码 解决
- B/S架构下实现文件上传
- 【目标检测大集合】R-FCN、SSD、YOLO2、faster-rcnn和labelImg实验笔记
- #sicily#1641.Binary Searchable
- LeetCode 33---Search in Rotated Sorted Array
- Rotate List
- Windows Server 2003安装IIS服务并配置WEB站点
- 在Mac上搭建React Native开发环境
- 一个简易的反射类库NMSReflector
- [Hnoi2010]Bounce 弹飞绵羊 分块暴力
- javaweb开发过程中小工具系列之JavaMail发邮件
- 151. Reverse Words in a String**
- 莫队+树状数组 题解【bzoj3289】Mato的文件管理
- Linux(Ubuntu)使用vundle管理vim-go及mapping配置说明