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

自建网站服务器潍坊建设部门管理网站

自建网站服务器,潍坊建设部门管理网站,wordpress existing_mimes,百度云账号登录合并两个排序的链表 输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。 数据范围 链表长度 [ 0 , 500 ] [0,500] [0,500]。 样例 输入:1->3->5 , 2->4->5输出:1->2->3->4->5->…

合并两个排序的链表


输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。

数据范围

链表长度 [ 0 , 500 ] [0,500] [0,500]

样例
输入:1->3->5 , 2->4->5输出:1->2->3->4->5->5
解决方案:二路归并
  1. 初始化
    • 新建虚拟头结点 dummy(保护结点),并让 cur 指针指向 dummy
  2. 比较与合并
    • 比较 l1l2 当前结点的值 val
      • l1->val < l2->val
        • cur->next 指向 l1,并将 l1 后移。
      • 否则
        • cur->next 指向 l2,并将 l2 后移。
    • 移动 cur 指针到新连接的结点(cur = cur->next)。
  3. 处理剩余链表
    • l1l2 为空时,将 cur->next 指向未遍历完的链表(剩余部分直接接上)。
解决方案:二路归并
  • 时间复杂度:两个链表各遍历一次,总时间复杂度为 O(n)
  • 空间复杂度:仅使用常数个额外指针(dummycur),空间复杂度为 O(1)
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode* merge(ListNode* l1, ListNode* l2) {auto dummy = new ListNode(-1), cur = dummy;while(l1 && l2){if(l1->val < l2->val){cur = cur->next = l1;l1 = l1->next;}else{cur = cur->next = l2;l2 = l2->next;}}if(l1) cur->next = l1;if(l2) cur->next = l2;return dummy->next;}
};
http://www.dtcms.com/wzjs/804102.html

相关文章:

  • 最大的搜索网站排名有没有做装修中介的网站
  • 搜狐快站怎么样高端的咨询行业网站制作
  • 深圳英文网站制作北京 网站备案
  • 中国站长之家域名查询网站双链接怎么做
  • 电子商务网站开发的内容石景山周边网站建设
  • 网站流量统计软件做网站的工作量
  • 网站系统建设项目wordpress怎么做小说站
  • 邯郸做网站推广多少钱绵阳网站建设怎么做
  • 马克·扎克伯格大学做的网站宿豫建设局网站
  • 用什么软件上传网站音乐网站建设流程
  • 99元一月做网站制作wordpress模板
  • 织梦做网站建立数据库织梦网站后台教程
  • 企业定制网站建设公司哪家好网站开发提供源代码
  • 龙岗网站建设培训荥阳网站开发
  • 浙江网站建设多少钱如何经营网店
  • 行业网站功能哈尔滨建设职工大学
  • 内网建设网站外网访问怎样做网站策划
  • 网站的请求服务做优先级wordpress 330
  • 平昌网站建设做关于星空的网站
  • 网站备案在哪个网建立网站费用表
  • 网站一直不被收录做平台网站多少钱
  • 网站建设优劣势分析到什么网站做专利检索报告
  • 遵义网站开发公司电话深圳网站设计 工作室
  • 此网站服务器不在国内维护网站开发注意事项
  • 有没有咨询求助做任务的网站求职seo服务
  • 西安动力无限网站建设重庆建设工程造价协会
  • 网站建设设计简介wordpress本地网站打开慢
  • 学什么可以做响应式网站网站开发设计技术路线
  • 做网站可以挣多少钱知名网站建设企业多少钱
  • 怎样下载门户网站监控直播网站开发