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

天津网站建设找哪家产品线上推广方式

天津网站建设找哪家,产品线上推广方式,好看的网站源码,腾讯广告代理商✨博主#xff1a;命运之光 #x1f984;专栏#xff1a;算法修炼之练气篇#xff08;C\C版#xff09; #x1f353;专栏#xff1a;算法修炼之筑基篇#xff08;C\C版#xff09; #x1f433;专栏#xff1a;算法修炼之练气篇#xff08;Python版#xff09; … ✨博主命运之光  专栏算法修炼之练气篇C\C版 专栏算法修炼之筑基篇C\C版 专栏算法修炼之练气篇Python版 ✨博主的其他文章点击进入博主的主页  前言欢迎来到这个LeetCode每日算法题专栏 无论你是编程新手还是有一定经验的开发者掌握算法和数据结构都是成功的关键。在这个专栏里我将每天为你分享一道算法题并提供简单易懂的解析和讲解。 ☀️通过每日挑战你将逐渐培养解决问题的思维方式掌握重要的编程技巧。无论是面试准备还是日常编码这些知识都将对你大有裨益。 让我们一起开始这段充满乐趣和成长的学习之旅吧希望你能从中受益开拓编程的新视野 目录 21. 合并两个有序链表 正确答案 方法一暴力破解 提交记录 详细解析该题代码方法一暴力破解 方法二递归法解题 提交记录 详细解析该题代码方法二递归法解题 结语 21. 合并两个有序链表 正确答案 方法一暴力破解 /*** 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* mergeTwoLists(ListNode* l1, ListNode* l2) {ListNode dummyListNode(-1);ListNode *prevdummy;while(l1 ! nullptr l2 ! nullptr){if(l1-val l2-val){prev-nextl1;l1 l1-next;}else{prev-next l2;l2 l2-next;}prev prev-next;}prev-nextl1nullptr?l2:l1;return dummy.next;} }; 提交记录 详细解析该题代码方法一暴力破解 这段代码是一个用于合并两个升序链表的C函数其中使用了单链表的数据结构。现在我将逐行解析代码的功能 定义了一个单链表的数据结构 ListNode每个节点包含一个整数值 val 和一个指向下一个节点的指针 next。该数据结构提供了三个构造函数 ListNode()无参构造函数初始化 val 为0next 为nullptr。ListNode(int x)带参构造函数初始化 val 为给定的整数xnext 为nullptr。ListNode(int x, ListNode *next)带参构造函数初始化 val 为给定的整数xnext 为指向给定节点的指针。 接下来是一个C类 Solution 的定义。该类中有一个公共成员函数 mergeTwoLists它用于合并两个升序链表。该函数接受两个指向链表头节点的指针 l1 和 l2并返回一个指向合并后链表头节点的指针。在 mergeTwoLists 函数中 创建了一个名为 dummy 的 ListNode 对象并初始化其值为-1。这个 dummy 节点在合并过程中起到了哨兵节点的作用它不包含实际数据只是用来简化代码逻辑。创建一个指向 dummy 节点的指针 prev用于跟踪合并后链表的末尾节点。 使用 while 循环进行链表的合并循环条件是 l1 和 l2 都不为nullptr即还有节点需要合并。 在循环体中比较 l1-val 和 l2-val 的大小如果 l1 的值小于 l2则将 l1 添加到合并后链表的末尾并将 l1 指针移动到下一个节点否则将 l2 添加到合并后链表的末尾并将 l2 指针移动到下一个节点。然后将 prev 指针移动到合并后链表的末尾。 当循环结束后有可能 l1 或 l2 中还有剩余节点未合并此时需要将剩余的部分直接添加到合并后链表的末尾。这里使用了三目运算符 l1nullptr?l2:l1 来确定应该将哪个链表的剩余部分添加到末尾。最后返回 dummy.next即合并后链表的头节点的指针。由于 dummy 是一个临时节点实际的合并后链表从 dummy.next 开始。 总体来说这段代码通过迭代遍历两个升序链表根据节点值的大小将节点逐个合并并返回合并后的链表头节点的指针。合并后的链表仍然保持升序。 方法二递归法解题 /*** 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* mergeTwoLists(ListNode* l1, ListNode* l2) {if (l1 nullptr) {return l2;}if (l2 nullptr) {return l1;}if (l1-val l2-val) {l1-next mergeTwoLists(l1-next, l2);return l1;} else {l2-next mergeTwoLists(l1, l2-next);return l2;}} }; 提交记录 详细解析该题代码方法二递归法解题 除了迭代法外还有递归法可以解决合并两个升序链表的问题。我将为你介绍递归法的解题思路和代码示例。 递归法的思路是基于合并两个升序链表的子问题。假设我们已经知道如何合并两个以 l1 和 l2 为头节点的升序链表我们可以将问题转化为合并以 l1-next 和 l2 为头节点的升序链表并将结果连接到 l1 上。这样问题规模不断缩小最终合并两个链表的问题将转化为合并两个小一些的链表的问题直到其中一个链表为空。 下面是用递归法解决问题的代码示例 /*** 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* mergeTwoLists(ListNode* l1, ListNode* l2) {if (l1 nullptr) {return l2;}if (l2 nullptr) {return l1;}if (l1-val l2-val) {l1-next mergeTwoLists(l1-next, l2);return l1;} else {l2-next mergeTwoLists(l1, l2-next);return l2;}} }; 在递归函数 mergeTwoLists 中我们首先处理边界情况即如果其中一个链表为空直接返回另一个链表。然后我们比较 l1-val 和 l2-val 的大小如果 l1 的值小于 l2则将 l1 的下一个节点与合并后的链表连接并返回 l1否则将 l2 的下一个节点与合并后的链表连接并返回 l2。 递归法的思路较为简洁但需要注意对递归深度的控制防止出现栈溢出的情况。在实际应用中可能需要对递归深度进行限制或使用迭代法来处理大规模的链表。 结语 再接再厉继续加油 本章的内容就到这里了觉得对你有帮助的话就支持一下博主把~ 点击下方个人名片交流会更方便哦~ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
http://www.zqtcl.cn/news/290114/

相关文章:

  • php网站留言板怎么做wordpress 相关文章推荐
  • 怎么看网站被惩罚专业的网站建设流程
  • 如何制作手机免费网站模板下载用户体验设计师是什么
  • php网站建设基本流程基于php网站开发设计
  • 建设一个网站需要哪些软硬件条件无做弊的棋牌游戏网站
  • 最有设计感的网站扬中网站建设 优帮云
  • 企业建设银行网站登录不了wordpress需要ftp
  • 广州营销型网站建设团队专业建设内涵包括哪些内容
  • 网站如何做响应式布局外国网站上做Task
  • 知乎网站建设入门书大渡口集团网站建设
  • 免费网站建设是什么宁波网站建设的价格表
  • 网站设计导航栏高度网站设计的经营范围
  • 帮别人建设网站多少利润北京网站建设公司华网制作作
  • 微信网站需要备案吗瑞安商业网站建设
  • 做网站如何计算工资wordpress stheme
  • 网站建设销售人才简历wordpress 搜索tag
  • 设计网站专业云南旅行社网站开发
  • 小规模开普票网站建设几个点张浦专业做网站
  • 点击图片跳转到网站怎么做链接网址后缀名大全
  • php网站开发优化crm客户系统
  • 韩国网站免费模板wordpress数据库名称
  • 如何修改网站发布时间贵阳网站建设报价
  • 东莞网站推广培训免费云电脑
  • 湖北网站建设详细方案脑叶公司手机版下载
  • 淄博网站制作平台形象怎样建设旅游网站
  • 广州花都网站建设网站改版协议
  • 中国建设协会网站首页工信部网站备案被删除
  • 丹阳网站建设案例dedecms 购物网站
  • 网站上怎么做动画广告视频下载seo黑帽是什么意思
  • 服装网站建设网综合社区网站开发费用