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

做网站要固定ip国内搜索网站排名

做网站要固定ip,国内搜索网站排名,个人能建网站吗,网络舆情的应对及处理这篇文章我们继续来讲链表中很经典的面试题:合并有序链表。 目录 迭代 递归 我们首先来看一下这张图片里面的要求,给你两个链表,要求把他们按照从小到大的方式排列。 这里涉及到几个问题,首先,我们的头节点是不是要…

 这篇文章我们继续来讲链表中很经典的面试题:合并有序链表。

目录

迭代

递归


 我们首先来看一下这张图片里面的要求,给你两个链表,要求把他们按照从小到大的方式排列。

这里涉及到几个问题,首先,我们的头节点是不是要释放一个?而且我们把该节点连接到另外一个链表的某个节点上的时候?会不会存在指针丢失的问题?就算你链接的很稳妥,那么这里又会涉及到时间复杂度和空间复杂度的问题。

好了,不多说了,再说就要被自己绕晕了哈哈,初学者就是不需要想很多,遇到链表的题,无非三种路径,双指针,迭代,递归。

我们先来看好理解的迭代的方法。当然这道题的双指针和迭代其实也是殊途同归。本质上是一样的。

迭代

我们可以用迭代的方法来实现上述算法。当 l1 和 l2 都不是空链表时,判断 l1 和 l2 哪一个链表的头节点的值更小,将较小值的节点添加到结果里,当一个节点被添加到结果里之后,将对应链表中的节点向后移一位。

所以这其实是一种暴力求法,也就是说,我一个个拿出来比较,因为我的原链表是有序的,所以不存在重复比较的过程。所以我就大胆给两个链表各一个变量去遍历然后比较。

当然,这里为什么要自定义一个哨兵位头节点?因为有了头节点能够更好更容易返回我们合并后的链表。这里把代码给大家放一下,稍微填了一些注释。

class Solution {
public:ListNode* mergeTwoLists(ListNode* list1, ListNode* list2) {auto dummy = new ListNode(0);auto cur = dummy;while( list1 && list2 ){auto pp = (list1->val < list2->val) ? &list1 : &list2;  // 获取俩链表当前值小的结点cur->next = *pp;    // cur 指向值小的结点cur = cur->next;    // cur 后移*pp = (*pp)->next;  // *pp 也要后移,不然下次循环比较的还是旧的list1或list2结点}// 循环结束,list1 和 list2 其中有一个为空,但不知道是哪个cur->next = (list1) ? list1 : list2;return dummy->next;}
};

递归

我们再来看递归。递归其实难的不是想不想的到,难的是对自我返回条件的判定。简单的说,难的是这个递归该做到哪一步。怎么回归。当然,如果你做的多了,很快很自然就能想到我为什么需要去限制比较的条件呢,或者说我回归的应该是节点,我的条件的判断才应该是比较。
所以代码如下:

public class Solution {public ListNode MergeTwoLists(ListNode l1, ListNode l2) {if (l1 == null) {return l2;} else if (l2 == null) {return l1;} else if (l1.val < l2.val) {l1.next = MergeTwoLists(l1.next, l2);return l1;} else {l2.next = MergeTwoLists(l1, l2.next);return l2;}}
}

好了,这道题就讲到这里

如果你觉得对你有帮助,可以点赞关注加收藏,感谢您的阅读,我们下一篇文章再见。

一步步来,总会学会的,首先要懂思路,才能有东西写。

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

相关文章:

  • 湖北高端企业礼品定制黑帽seo技巧
  • 郑州做网站的大公司有哪些线上推广引流渠道
  • 利川市网站建设广告营销方式有哪几种
  • 如何作wordpress 主题seo有哪些网站
  • 建设网站人员免费网站入口在哪
  • 企业网站建设发展平台专业seo培训学校
  • java网站开发教程流程国内前10电商代运营公司
  • 什么是网站主题优化如何自己开发一个平台
  • 这么用自己的电脑做网站服务器服务营销的七个要素
  • 招聘网站建设方案模板怎么免费注册域名
  • 河南建筑业城乡建设网站查询小红书seo
  • 仙桃网站定制外贸企业网站推广
  • 自己怎么做直播网站优化网站界面的工具
  • 网站优化图片链接怎么做阿里巴巴友情链接怎么设置
  • 建设大淘客网站关键词排名优化流程
  • 关闭网站弹窗代码百度seo优化包含哪几项
  • 绵阳做公司网站东莞今天发生的重大新闻
  • 特卖网站怎么做关键词歌曲免费听
  • 朔州怀仁网站建设抖音seo招商
  • WordPress实验室常州网站建设优化
  • 做网站要什么技术百度引擎搜索推广
  • 网站优化推广多少钱网络广告策划与制作
  • 做网站需要视频衔接怎么做桂平seo快速优化软件
  • 青县做网站seo是啥软件
  • 如何做网站充值做百度线上推广
  • 让别人做网站需要注意什么新闻式软文
  • 网站建设要做哪些潍坊网站建设优化
  • 婚纱网站布局ppt怎么做网络推广引流最快方法
  • 织梦系统如何做网站热搜在哪里可以看
  • 做venn图网站西安百度seo推广