博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[leetcode-61-Rotate List]
阅读量:6405 次
发布时间:2019-06-23

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

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.

思路:

首先求出list的长度length,然后将最后一个结点指向初始的头结点,

然后从该初始结点出发,指针向后移动length-k次,

找到新链表的尾结点,然后把它的next置为NULL。

ListNode* rotateRight(ListNode* head, int k)    {        ListNode* result;        if (k == 0 || head == NULL) return head;        int length = 1;        ListNode* temp = head;        while (head != NULL && head->next != NULL)        {            head = head->next;            length++;        }        k %= length;        head->next = temp;//head 目前为最后一个结点的指针 指向初始时候的头部结点        for (int i = 0; i < length - k-1;i++)        {            temp = temp->next;        }         result = temp->next;        temp->next = NULL;        return result;    }

 

转载于:https://www.cnblogs.com/hellowooorld/p/6674159.html

你可能感兴趣的文章
win7环境下的栈溢出与实战
查看>>
八大监听器
查看>>
self.navigationController退出到指定页面,或者一次性pop出n个页面
查看>>
Quartz实现数据库动态配置定时任务
查看>>
iptables 端口转发以及双向通信
查看>>
备战一线互联网公司Java工程师面试题 (1)
查看>>
ThinkPHP中自动验证失败
查看>>
jquery图片切换插件jquery.cycle.js参数详解
查看>>
JavaScript push() 方法
查看>>
Map集合
查看>>
JSP基础语法1
查看>>
elasticsearch Java API 之GET API & DELETE API
查看>>
《深入理解Java虚拟机》——GC基础概念
查看>>
微信小程序联盟:官方文档+精品教程+demo集合(5月31日更新,持续更新中……)...
查看>>
Fastjson 的 Set类型和 WriteClassName 选项引起的BUG
查看>>
翻译: 星球生成 II
查看>>
IOS 多线程
查看>>
python序列化数据本地存放
查看>>
#CCNA#IP地址、子网划分参考资料网址
查看>>
比较不错的图片上传插件
查看>>