博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode -- Rotate List
阅读量:5140 次
发布时间:2019-06-13

本文共 1113 字,大约阅读时间需要 3 分钟。

Question:

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.

 

Analysis:

给出一个单链表,旋转链表的从右边数k个位置,将他们按顺序放到左边。k是个非负的整数。

注意一些特殊情况:

如当给出的k值比链表长度还大怎么办?当k=0怎么办?

 

Answer:

/** * Definition for singly-linked list. * public class ListNode { *     int val; *     ListNode next; *     ListNode(int x) { val = x; } * } */public class Solution {    public ListNode rotateRight(ListNode head, int k) {        if(head == null || head.next == null)             return head;        int len = 0;        ListNode p = head;        ListNode end = null;        while(p != null) {            if(p.next == null)                 end = p;            p = p.next;            len++;        }        k %= len;        if(k == 0)            return head;        int pre = len - k;        len = 0;        p = head;        while(len +1 < pre) {            p = p.next;            len++;        }        ListNode q = p.next;        end.next = head;        p.next = null;        return q;    }}

 

转载于:https://www.cnblogs.com/little-YTMM/p/5446466.html

你可能感兴趣的文章
AOSP ON MAKO(在NEXUS 4上刷ANDROID 4.4 源代码包-下载/配置/编译/刷机)
查看>>
nativeXml使用方法
查看>>
LightOJ1074Extended Traffic(bellman_ford最短路+负环标记)
查看>>
Android Studio 编译不通过,报错“找不到org.apache.http
查看>>
SQL Server Failover Cluster (FCI) installations is the failure of the Network Name
查看>>
springmvc集成Freemarke配置的几点
查看>>
自己写的仿爱奇艺综艺频道轮播图,没有淡入淡出效果
查看>>
提炼游戏引擎系列:第一次迭代
查看>>
Django 学习
查看>>
Android的事件处理机制详解(二)-----基于监听的事件处理机制
查看>>
s5-12 RIP
查看>>
Linux-以指定用户运行redis
查看>>
Linux-socket的close和shutdown区别及应用场景
查看>>
初探Oracle全栈虚拟机---GraalVM
查看>>
移动端的点击滚动逻辑实现。
查看>>
xpath
查看>>
parted分区
查看>>
抛出错误
查看>>
Can't play local SWF file in Media Player
查看>>
图片标签img
查看>>