将一个链表后K个结点移到链表头
来源:互联网 发布:ajax post提交json 编辑:程序博客网 时间:2024/05/29 19:57
例如:给定链表: 1->2->3->4->5->NULL ; k = 2或k = 7
翻转后的结果为: 4->5->1->2->3->NULL.
解题思路:(1)将单链表转换成循环链表
(2)根据K值确定新链表头的位置
struct ListNode* rotateRight(struct ListNode* head, int k) {
if (head == NULL || k == 0) return head;struct ListNode* head1 = head;int count = 1;while (head1->next != NULL){ head1 = head1->next; count++;//计算链表的结点总数}head1->next = head;k = count - k%count - 1;while (k--){ head = head->next;}struct ListNode* newhead = head->next;head->next = NULL;return newhead;
}
0 0
- 将一个链表后K个结点移到链表头
- 将数组的奇数移到前面偶数到后面&&输出链表的倒数第k个结点
- K个有序链表共N个结点在O(NlgK)时间合并为一个新的有序链表头文件C语言
- 链表中倒数第k个结点 输入一个链表,输出该链表中倒数第k个结点。
- 链表头结点作用
- 链表头结点作用
- 链表头结点作用
- 链表头结点作用
- 链表倒数第k个结点
- 单向链表倒数k个结点
- 13、输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第K个结点
- 13 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出其倒数第k个结点
- 实习--实习第一天
- 重写description方法
- openstack搭建中的虚拟机网卡配置IP各种问题
- android当蓝牙设备连接或者断开时候的广播事件处理
- Dancing links
- 将一个链表后K个结点移到链表头
- 机器学习(2)——单变量线性回归
- 你不知道的七个冥王星冷知识
- 程序设计项目实训:银行储存系统
- 几种简单的滤波方式(未完)
- Linux学习笔记1-20150715
- 学习python之走进Scrapy
- iphone 开发对象方法、重写description方法
- ffmpeg的tutorial中文版学习笔记(一)