当前位置: 首页 > wzjs >正文

永远网站建设什么软件可以排名次

永远网站建设,什么软件可以排名次,做物业管理的企业网站,网络营销中网站建设的策略❤个人主页: 链表环结构 0.前言1.环形链表(基础)2.环形链表Ⅱ(中等)3.证明相遇条件及结论3.1 问题1特殊情况证明3.2 问题1普适性证明 0.前言 在这篇博客中,我们将深入探讨链表环结构的检测方法:…

在这里插入图片描述
❤个人主页:

链表环结构

  • 0.前言
  • 1.环形链表(基础)
  • 2.环形链表Ⅱ(中等)
  • 3.证明相遇条件及结论
    • 3.1 问题1特殊情况证明
    • 3.2 问题1普适性证明

在这里插入图片描述

0.前言

在这篇博客中,我们将深入探讨链表环结构的检测方法:
Floyd算法的原理:如何通过快慢指针检测环?
环入口的定位:如何找到环的起点?
通过这篇博客,我会对链表中的环结构进行相关证明解释,总结学习。

1.环形链表(基础)

题目链接:https://leetcode.cn/problems/linked-list-cycle/description/

题目描述:
在这里插入图片描述
代码实现:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/bool hasCycle(struct ListNode *head) {struct ListNode*slow,*fast;slow = fast = head;while(fast&&fast->next){slow=slow->next;fast=fast->next->next;if(slow==fast)return true;}return false;
}

代码解释:

这个题目的实现逻辑比较简单,我们定义快慢指针来进行实现,fast指针每次走2步,slow指针每次走1步,当快指针和慢指针相遇的时候,如果链表中存在环,则返回 true 。否则,返回 false。

2.环形链表Ⅱ(中等)

题目链接:https://leetcode.cn/problems/linked-list-cycle-ii/description/
题目描述:
在这里插入图片描述

代码实现1:

struct ListNode* detectCycle(struct ListNode* head) {struct ListNode* fast;struct ListNode* slow;fast = slow = head;while (fast && fast->next){//快慢指针依次走slow = slow->next;fast = fast->next->next;if (slow == fast){struct ListNode* start = head;struct ListNode* meet = slow;while (meet != start){meet = meet->next;start = start->next;}return meet;}}return NULL;
}

代码解释1:

在这里插入图片描述

代码实现2:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) 
{struct ListNode* tailA=headA,*tailB=headB;int lenA=1,lenB=1;while(tailA){tailA=tailA->next;++lenA;}while(tailB){tailB=tailB->next;++lenB;}int gap=abs(lenA-lenB);struct ListNode* longlist=headA,*shortList=headB;if(lenA<lenB){longlist=headB;shortList=headA;}while(gap--){longlist=longlist->next;}while(longlist!=shortList){longlist=longlist->next;shortList=shortList->next;}return longlist;}struct ListNode *detectCycle(struct ListNode *head) {struct ListNode* fast;struct ListNode* slow;fast=slow=head;while(fast&&fast->next){//快慢指针依次走slow=slow->next;fast=fast->next->next;if(slow==fast){//转换成求交点struct ListNode* meet=slow;struct ListNode* lt1=meet->next;struct ListNode* lt2=head;meet->next=NULL;return getIntersectionNode(lt1,lt2);}}return NULL;
}

代码解释2:
在这里插入图片描述

3.证明相遇条件及结论

3.1 问题1特殊情况证明

问题1: 为什么slow走1步,fast走2步,他们会相遇吗?会不会错过?请证明
在这里插入图片描述

3.2 问题1普适性证明

问题:为什么slow走1步,fast走3步(x>=3),他们会相遇吗?会不会错过?请证明
在这里插入图片描述

感谢您的阅读支持!!!
后续会持续更新的!!!
文末投票支持一下!!!

在这里插入图片描述

http://www.dtcms.com/wzjs/365845.html

相关文章:

  • cnzz统计代码放在网站steam交易链接在哪
  • 百度站长怎么做网站维护seo技术外包 乐云践新专家
  • 广东 政府网站 建设发展规划网络优化工程师主要负责什么工作
  • 珠海建站模板源码口碑营销怎么做
  • 做推文封面的网站seo专业课程
  • 自己做网站要钱么百度推广开户代理商
  • 做网站的咋挣钱大庆网络推广
  • 展示类网站建设百度一下百度搜索入口
  • 网站备案有电话来昆明网站seo服务
  • wordpress move下载seo文章是什么
  • 乐平网站建设如何注册一个域名
  • 网站排名推广怎么做百度官方客服平台
  • 网站上实用的h5特效营销技巧和营销方法视频
  • 网站研发流程注册google账号
  • 制作公司网站结构图网站seo外包公司
  • 天河建设网站外包中国去中心化搜索引擎
  • 微网站建设套餐广州新闻报道
  • 网站域名做固定资产怎么处理网站seo站长工具
  • 做网站最新技术seo关键词首页排名
  • 网站icp备案 年检网站如何快速被百度收录
  • 中国建设银行网站色彩网站查询域名入口
  • 网站建设方案产业长沙营销型网站建设
  • 做国外网站建设长沙seo咨询
  • 免费自助小型网站短视频seo搜索优化
  • 偷拍网站做百度地图优化
  • 情公司做的网站推广发帖网站
  • 互联网网站制作运营培训班有用吗
  • wordpress多站点使用其他域名石家庄seo网络推广
  • 网站建设在windos的设置网站推广广告
  • 一起合伙做项目的网站上海网络推广公司排名