文章列表

861 1 分钟

# 题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 # 思路 可以通过左右双指针来解决该题目。l 从数组最左边遍历,r 从数组最右边遍历,并且维护一个 lmax 和 rmax(这两个变量可以合并成一个变量)。比较 height [l] 和 height [r] 获取最低的所在方向,若方向改变,更新 base 值,执行 l 或 r--;若不变,则计算 result += height [l] 或 height [r] - base,然后执行 l 或 r--。最后当 l>=r 时结束返回结果,该解决方法时间复杂度 O...
877 1 分钟

# 题目 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 # 思路 可以维护一个新的链表,将链表数组中的链表分别取出合并进新的链表中,最后获得合并后的链表。 # 题解 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x),...