您的位置:首页 > 游戏 > 游戏 > 东莞百姓网免费发布信息网_莱芜信息港官网_营业推广方案_域名归属查询

东莞百姓网免费发布信息网_莱芜信息港官网_营业推广方案_域名归属查询

2024/10/5 19:13:29 来源:https://blog.csdn.net/weixin_58073817/article/details/142459165  浏览:    关键词:东莞百姓网免费发布信息网_莱芜信息港官网_营业推广方案_域名归属查询
东莞百姓网免费发布信息网_莱芜信息港官网_营业推广方案_域名归属查询

61. 旋转链表

  • 61. 旋转链表
  • 思路:注释
  • 时间:O(n);空间:O(1)
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* rotateRight(ListNode* head, int k) {// 思路1:和数组一样做三次翻转// 思路2:先连接尾节点和头节点成环,然后返回正数n-k+1个节点if(head == nullptr) return nullptr;int len = 1;ListNode* p = head;while(p->next){len++;p = p->next;}p->next = head;k %= len;// 移动n-k到目标节点的前一个节点p = head;for(int i = 0; i < len - k - 1; i++){p = p->next;}head = p->next;p->next = nullptr;return head;}
};

206. 反转链表

  • 206. 反转链表
  • 时间:O(n);空间:O(1)
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* reverseList(ListNode* head) {// 思路1:头插法// 思路2:两两互换ListNode *pre = nullptr, *cur = head, *temp = nullptr;while(cur){temp = cur->next;cur->next = pre;pre = cur;cur = temp;}return pre;}
};

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com