leetcode 21.合并有序列表(js)
合并有序列表
- 题目
- 测试点
- 描述
- 题解
- 方法1
- 方法2
题目
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
测试点
输入:l1 = [1,2,4], l2 = [1,3,4]
输出:[1,1,2,3,4,4]
描述
/*** Definition for singly-linked list.* function ListNode(val, next) {* this.val = (val===undefined ? 0 : val)* this.next = (next===undefined ? null : next)* }*/
/** @param {ListNode} l1* @param {ListNode} l2* @return {ListNode}*/
var mergeTwoLists = function (l1, l2) {}
题解
方法1
/*** Definition for singly-linked list.* function ListNode(val, next) {* this.val = (val===undefined ? 0 : val)* this.next = (next===undefined ? null : next)* }*/
/** @param {ListNode} l1* @param {ListNode} l2* @return {ListNode}*/
var mergeTwoLists = function (l1, l2) {// 为了return时还能找到头结点let head = new ListNode(null)let p = head// m1while (l1 && l2) {if (l1.val < l2.val) {p.next = l1p = p.nextl1 = l1.next} else {p.next = l2p = p.nextl2 = l2.next}}while (l1) {p.next = l1p = p.nextl1 = l1.next}while (l2) {p.next = l2p = p.nextl2 = l2.next}return head.next
};
方法2
思路也差不多,代码量少点:
var mergeTwoLists = function (l1, l2) {// 为了return时还能找到头结点let head = new ListNode(null)let p = head// m2while (l1 || l2) {if ((l1 && l2 && l1.val <= l2.val) || !l2) {p.next = l1p = p.nextl1 = l1.next} else {p.next = l2p = p.nextl2 = l2.next}}return head.next
};
leetcode 21.合并有序列表(js)相关推荐
- [递归|迭代] leetcode 21 合并两个有序链表
[递归|迭代] leetcode 21 合并两个有序链表 1.题目 题目链接 将两个升序链表合并为一个新的升序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2 ...
- LeetCode 21. 合并两个有序链表(链表)
上一篇博客:LeetCode 20. 有效的括号(栈.字符串) 写在前面:大家好!我是ACfun,我的昵称来自两个单词Accepted和fun.我是一个热爱ACM的蒟蒻.最近萌生了刷LeetCode ...
- 算法导论 — 思考题8-6 合并有序列表的下界
(合并有序列表的下界)合并两个有序列表是我们经常会遇到的问题.作为MERGE-SORT的一个子过程,我们在2.3.1节中已经遇到过这一问题.对这一问题,我们将证明在最坏情况下,合并两个都包含nnn个元 ...
- LeetCode 21合并两个有序链表22括号生成
微信搜索bigsai,回复进群,加入打卡.维护不易,欢迎点赞支持! 合并两个有序列表 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 ...
- Java实现 LeetCode 21 合并两个有序链表
21. 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1 ...
- LeetCode 708. 循环有序列表的插入
文章目录 1. 题目 2. 解题 1. 题目 给定循环升序列表中的一个点,写一个函数向这个列表中插入一个新元素,使这个列表仍然是循环升序的. 给定的可以是这个列表中任意一个顶点的指针,并不一定是这个列 ...
- LeetCode 21. 合并两个有序链表(单链表)
文章目录 1. 题目信息 2. 解题 1. 题目信息 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例:输入:1->2->4, 1-> ...
- 【Java】leetCode 21 合并两个有序链表
题目 : 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 解题思路 : 1.依据以上两个升序链表进行拼接: 2.先定义一个傀儡节点newHead,用来 ...
- leetcode - 21. 合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1->1->2- ...
最新文章
- jquery easyui 操作总结
- 04_NoSQL数据库之Redis数据库:set类型和zset类型
- Lync-用户-电话号码-更新
- C++之operator关键字(重载操作符) 使用总结
- 计算机等级考试考卷试题按钮,全国计算机等级考试一级B模拟试题及答案2011.7...
- oracle audit文件,oracle 参数文件audit_trail的认识
- mysql 5.6 解压缩版安装教程
- matlab线性代数电子书,实用大众线性代数 MATLAB版_13652907.pdf
- 完美卸载SQL Server2014数据库
- 《Redis开发与运维》笔记-复制
- 用树莓派3B+实现智能语音识别
- 最新!谷歌浏览器去除CSDN广告插件
- 编译原理用C语言编写递归下降分析程序,编译原理递归下降分析器(C语言).pdf
- 基于同源策略对CORS和JSONP的初步认识
- 自动化生产线仿真教学
- 管理员必须知道的RADIUS认证服务器的部署成本
- Vue3 优雅的模态框封装方案
- 02 MSC类设备-基础篇(二)
- FusionCharts报表
- Makefile编写和使用技巧