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

家电网站设计方案/网店如何做推广

家电网站设计方案,网店如何做推广,小程序开发平台哪家比较被大家认可,wordpress 珠宝两个有序的链表合并1.题目2.思路3. 代码实现4.复杂度分析1.题目 LeetCode题目链接 2.思路 我们可以用迭代的方法来实现上述算法。 当 l1 和 l2 都不是空链表时,判断 l1 和 l2 哪一个链表的头节点的值更小,将较小值的节点添加到结果里,当一个…

两个有序的链表合并

  • 1.题目
  • 2.思路
  • 3. 代码实现
  • 4.复杂度分析

1.题目

LeetCode题目链接

在这里插入图片描述

2.思路

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

算法

  • 首先,我们设定一个哨兵节点 prehead ,这可以在最后让我们比较容易地返回合并后的链表。我们维护一个 prev 指针,我们需要做的是调整它的 next 指针。

  • 然后,我们重复以下过程,直到 l1 或者 l2 指向了 null :
    1)如果 l1 当前节点的值小于等于 l2 ,我们就把 l1 当前的节点接在 prev 节点的后面同时将 l1 指针往后移一位。否则,我们对 l2 做同样的操作。不管我们将哪一个元素接在了后面,我们都需要把 prev 向后移一位。

  • 在循环终止的时候, l1 和 l2 至多有一个是非空的。由于输入的两个链表都是有序的,所以不管哪个链表是非空的,它包含的所有元素都比前面已经合并链表中的所有元素都要大。这意味着我们只需要简单地将非空链表接在合并链表的后面,并返回合并链表即可。

3. 代码实现

在这里插入图片描述

/*** 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* list1, ListNode* list2) {struct ListNode *prehead = new ListNode(-1); struct ListNode *prev = prehead;while (list1 != NULL && list2 != NULL) {if (list1->val <= list2->val) {prev->next = list1;list1 = list1->next;} else {prev->next = list2;list2 = list2->next;}prev = prev->next;}// 合并后 l1 和 l2 最多只有一个还未被合并完,我们直接将链表末尾指向未合并完的链表即可prev->next = (list1 == NULL) ? list2 : list1;return prehead->next;}
};

4.复杂度分析

时间复杂度:O(n+m),其中 n和 m 分别为两个链表的长度。因为每次循环迭代中,l1 和 l2 只有一个元素会被放进合并链表中, 因此 while 循环的次数不会超过两个链表的长度之和。所有其他操作的时间复杂度都是常数级别的,因此总的时间复杂度为 O(n+m)。

空间复杂度:O(1)。我们只需要常数的空间存放若干变量。

http://www.jmfq.cn/news/5116483.html

相关文章:

  • 上海公司网站建设以子/seo推广主要做什么的
  • 图书馆网络规划与设计/黑河seo
  • 百度网站官方认证怎么做/域名申请的流程
  • 珠海响应式网站建设/网站权重查询
  • 网站进入沙盒的表现/长沙网站制作关键词推广
  • 阿里云上能建设自己的企业网站/优化百度涨
  • 毕业设计做课程网站好/免费推广平台哪些比较好
  • 无锡鸿源建设集团有限公司网站/重庆百度关键词推广
  • 政府网站建设赏析/企业网站建设制作
  • 鲲鹏建设集团有限公司网站/郴州网站seo外包
  • 房地产培训网站建设/优化网站性能
  • 发布app需要什么条件/seo的基本内容
  • 繁体网站怎么做/seo免费推广
  • 简易网站制作软件/深圳做网站公司
  • 网站图片上的水印怎么做/游戏推广员拉人技巧
  • 国家安全部门是干什么的/网站优化排名资源
  • 网站被攻击了怎么处理/大数据精准客户
  • 网站开发社区/广告投放怎么做
  • 如何创建微信公众号免费/长沙seo优化报价
  • 南海网站建设多少钱/抖音宣传推广方案
  • b2b主要网站有哪些/宁波seo博客
  • 东莞做网站的网络公司/微信小程序开发费用
  • 重庆公司建网站流程/网络优化的基本方法
  • 黑客做网站/网络营销课程
  • 有没有做网站一次付费/活动营销案例100例
  • 浙江建设职业技术学院官方网站/网站建设的一般步骤
  • 自适应企业网站源码/品牌营销推广公司
  • wordpress 中文安装教程/关键词智能优化排名
  • ssm框架网站开发 参考文献/seo顾问是什么职业
  • 深圳实力网站建设/服务营销案例