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

做食品网站有哪些凡科建站做的网站收录慢吗

做食品网站有哪些,凡科建站做的网站收录慢吗,家具建设企业网站,新民专业网站开发公司#x1f493; 博客主页#xff1a;倔强的石头的CSDN主页 #x1f4dd;Gitee主页#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏#xff1a;《数据结构与算法 经典例题》C语言 期待您的关注 ​ 目录 一、问题描述 二、解题思路 方法一#xff1a;数学公式推导法 方法…               博客主页倔强的石头的CSDN主页               Gitee主页倔强的石头的gitee主页    ⏩ 文章专栏《数据结构与算法 经典例题》C语言                                   期待您的关注 ​ 目录 一、问题描述 二、解题思路 方法一数学公式推导法 方法二转换为相交链表问题求解 三、代码实现 方法一实现代码 方法二实现代码 一、问题描述 原题链接   142. 环形链表 II - 力扣Le142. 环形链表 II - 力扣Le 二、解题思路 方法一数学公式推导法 预备知识 此方法的数学推导建立在判断链表是否带环的基础算法上推荐阅读前置文章 点击下方文字 【数据结构与算法 刷题系列】判断链表是否有环-CSDN博客 如图通过快慢指针法得到两个指针相遇位置时 假设 链表入环前的长度为L环的长度为C快慢指针相遇节点为meet环的入口与相遇节点meet的距离为N相遇时快指针已经在环内走了X圈X1快指针至少比慢指针都走一圈才能追上 推导过程 在meet相遇点 慢指针移动距离为LN 快指针移动距离为LX*CN   另外快指针移动距离是快指针的两倍 快指针也可以写成2LN 将两条公式结合起来 2LNLX*CN 化简 LNX*C LX*C-N LX-1*CC-N     最终得到的公式 LX-1*CC-N     该公式在图中说明的问题 链表入环前的长度L 与相遇点到环入口的距离再加X-1圈      ——X最少为1所以X-1至少为0 是相等的 结论 如果两个指针分别从链表起始位置和相遇点meet开始移动那么两个指针第一次相遇的节点就是环的入口 方法二转换为相交链表问题求解 此方法的数学推到建立在判断链表是否带环的基础算法上推荐阅读 【数据结构与算法 刷题系列】相交链表-CSDN博客 该方法是将带环链表问题转换为相交链表问题将问题降级处理 首先依然要 求得快慢指针相遇交点 然后将取得该节点下一个节点地址令其成为一个单独链表的首节点断开链表  之后这个问题就可以转换为相交链表问题来解决 三、代码实现 方法一实现代码 struct ListNode {int val;struct ListNode* next;}; typedef struct ListNode ListNode;//方法一数学推理法 struct ListNode* detectCycle1(struct ListNode* head) {ListNode* slow, * fast;slow fast head;ListNode* meet NULL;while (fast fast-next){slow slow-next;fast fast-next-next;if (slow fast)//先求得快慢指针相遇节点{meet slow;while (meet ! head)//两指针同时移动相遇即是入口{meet meet-next;head head-next;}return meet;}}return NULL; } 方法二实现代码 //求相交链表的交点的函数 struct ListNode* getIntersectionNode(struct ListNode* headA, struct ListNode* headB) {ListNode* pcurA headA;ListNode* pcurB headB;int countA 0;int countB 0;while (pcurA)//求出链表长度{pcurA pcurA-next;countA;}while (pcurB){pcurB pcurB-next;countB;}int tmp abs(countA - countB);//长度差值ListNode* slow, * fast;if (countA countB){slow headA;fast headB;}else{slow headB;fast headA;}while (tmp--)//长链表先走差值的步数{fast fast-next;}while (fast slow)//同步比较{if (fast slow)return fast;fast fast-next;slow slow-next;}return NULL; } struct ListNode* detectCycle(struct ListNode* head) {ListNode* slow, * fast;slow fast head;ListNode* meet NULL;while (fast fast-next){slow slow-next;fast fast-next-next;if (slow fast)//先求得快慢指针相遇节点{meet slow;ListNode* newhead meet-next;meet-next NULL;//将环断开变成两个相交的链表return getIntersectionNode(head, newhead);}}return NULL; }总结 两种方法可以自行选用 第一种方法属于推理复杂代码简单 第二种方法属于推理简单代码实现细节复杂 可根据实际情况选择合适的方法
http://www.pierceye.com/news/230154/

相关文章:

  • 做平面还有什么素材网站集团网站建设
  • seo网站营销推广公司不错的免费网站建设
  • 怎么做自助交易网站平面设计师工资一般多少钱一个月
  • 网站建设如何运营seoul是什么意思
  • 51CTO学院个人网站开发视频营销策划包括哪些内容
  • 专做排名的网站wordpress样式乱了
  • 网站空间域名维护协议网站备案的意义
  • word可以做网站链接吗网站推广的基本方法有哪些
  • 公司展示型网站wordpress后台邮箱怎么设置
  • 小程序咸鱼之王2022年搜索引擎优化指南
  • 企业网站建设 价格wordpress汉化主题
  • 兰州市建设厅官方网站做网站用的编程工具
  • 网站建设及维护招聘周口航迪科技网站建设公司怎么样
  • 服装外贸网站建设discuz应用
  • flash个人网站欣赏网站营销单页怎么做
  • 设计网站用什么语言网站建设需求范文
  • seo织梦网站建设步骤昆明网络营销软件
  • 企业网站 静态页面成都设计公司邮箱
  • 创世网站建设 优帮云北京网站建设工作室
  • 网站空间提供商哪个网站可以做英文兼职
  • 社区网站制作平台网站建设调研报告
  • 不会建网站怎么赚钱dw个人主页模板
  • 自助建站系统哪个好thinkphp做的网站源码
  • 广州企业网站模板建站现在有什么网站可以做兼职的
  • 网站开发 公司百度seo公司整站优化软件
  • 沈阳学网站制作学校网络推广龙岗比较好的
  • 佛山 建站公司网站风格一般具有哪三大特征
  • 网站的二级页面怎么做济南网站建设行知科技不错
  • 网站赢利如何查看实时街景地图
  • 手表网站欧米茄官方网络平台管理制度和管理办法