摘要:
题目 给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。 示例: 提示: 你可以假设 k 总是有效的,在输入数组不为空的情况下,1 ≤ k ≤ 输入数组的大小。 本题同 "【LeetCode】239. 滑动窗口最大值" 思路一:暴力 对每个数,寻找包括当前数在内后面k个数最 阅读全文
摘要:
题目 给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 示例 2: 思路一:摩尔投票 先假设第一个数为超过半数,然后与下一个数进行比较,如果相等,则计数器加一,否则计数器减 阅读全文
摘要:
题目 对于字符串 S 和 T,只有在 S = T + ... + T(T 与自身连接 1 次或多次)时,我们才认定 “T 能除尽 S”。 返回最长字符串 X,要求满足 X 能除尽 str1 且 X 能除尽 str2。 示例 1: 示例 2: 示例 3: 提示: 1 <= str1.length <= 阅读全文
摘要:
题目 给你一个整数数组 A,只有可以将其划分为三个和相等的非空部分时才返回 true,否则返回 false。 形式上,如果可以找出索引 i+1 & A) { int sum = 0; for (auto n : A) { sum += n; } if (sum % 3 != 0) return fa 阅读全文
摘要:
题目 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) 将元素 x 推入栈中。 pop() 删除栈顶的元素。 top() 获取栈顶元素。 getMin() 检索栈中的最小元素。 示例: 本题同 "【剑指Offer】面试题30. 包含min函数的栈" 阅读全文
摘要:
题目 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。 示例: 提示: 各函数的调用总次数不超过 20000 次 本题同 "【LeetCode】155. 最小栈" 思路 把每次的最小值(之前最小值和新 阅读全文
摘要:
请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或者 null。 示例 1: 示例 2: 示例 3: 示例 4: 提示: 10000 ump; Node cur = head 阅读全文
摘要:
给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的 "深拷贝" 。 我们用一个由 n 个节点组成的链表来表示输入/输出中的链表。每个节点用一个 [val, random_index] 表示: val:一个表示 Node.val 的整数。 ra 阅读全文