题解 | #合并两群能量值#
合并两群能量值
https://www.nowcoder.com/practice/d728938f66ac44b5923d4f2e185667ec
虚拟头结点。
在两个指针都不为空时进入循环
如果l1<l2,那就拼接l2的节点,l2向后跳一位;反之亦然
cur指针每次向后跳
结束循环时候,至少有一个列表为空,拼接上另一个就可
public class Solution { public ListNode mergeEnergyValues (ListNode l1, ListNode l2) { ListNode dummy = new ListNode(0); ListNode cur = dummy; ListNode cur1 = l1; ListNode cur2 = l2; while (cur1 != null && cur2 != null) { if (cur1.val < cur2.val) { cur.next = cur2; cur2 = cur2.next; } else { cur.next = cur1; cur1 = cur1.next; } cur = cur.next; } cur.next = cur1 == null ? cur2 : cur1; return dummy.next; } }
算法题刷刷刷 文章被收录于专栏
数组、链表、栈、队列、堆、树、图等。 查找和排序:二分查找、线性查找、快速排序、归并排序、堆排序等。 动态规划:背包问题、最长公共子序列、最短路径 贪心算法:活动选择、霍夫曼编码 图:深度优先搜索、广度优先搜索、拓扑排序、最短路径算法(如 Dijkstra、Floyd-Warshall) 字符串操作:KMP 算法、正则表达式匹配 回溯算法:八皇后问题、0-1 背包问题 分治算法:归并排序、快速排序