您的位置:首页 > 健康 > 美食 > b2b2c电子商务平台_在线设计平台有什么用_商品seo关键词优化_seo名词解释

b2b2c电子商务平台_在线设计平台有什么用_商品seo关键词优化_seo名词解释

2025/2/23 6:56:51 来源:https://blog.csdn.net/ZJC744575/article/details/143419507  浏览:    关键词:b2b2c电子商务平台_在线设计平台有什么用_商品seo关键词优化_seo名词解释
b2b2c电子商务平台_在线设计平台有什么用_商品seo关键词优化_seo名词解释

一、反转链表

原链接:https://leetcode.cn/problems/reverse-linked-list/

image-20241031162353336

思路一:翻指针

  1. 需要先保存下一个指针,否则翻转后找不到下一个指针
  2. 迭代到最后那n1就是头
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
struct ListNode* reverseList(struct ListNode* head) {// 判断head == NULL,等于空则返回空if(head == NULL){return NULL;}// 初始条件struct ListNode* n1 = NULL,*n2 = head,*n3= n2->next;// 结束条件while(n2){// 迭代n2->next = n1;n1 = n2;n2 = n3;// 如果n3为空了就不if(n3){n3 = n3->next;}}// n1 就是最后链表的头return n1;}

图解

image-20241031175443112

image-20241031175453190

**思路二:**头插法

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/struct ListNode* reverseList(struct ListNode* head) {struct ListNode* cur = head;// 定义新节点 struct ListNode* newHead = NULL;while(cur){// 提前保存下一个struct ListNode* next = cur->next;// 头插cur->next = newHead;newHead = cur;cur = next;}// 最后newhead就是第一个元素return newHead;
}

图解

image-20241031213815704

image-20241031213714633

image-20241031213726833

image-20241031214000360

二、链表的中间节点

原链接:https://leetcode.cn/problems/middle-of-the-linked-list/description/

image-20241031224624533

**思路一:**快慢指针

图解

image-20241031224745781

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
struct ListNode* middleNode(struct ListNode* head) {struct ListNode* slow = head,*fast = head;// fast和fast->next都不等于空才结束while(fast && fast->next){// slow 走一步slow = slow->next;// fast 走两步fast = fast->next->next;}return slow;
}

版权声明:

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

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