摘要: 有效括号字符串为空 ("")、"(" + A + ")" 或 A + B,其中 A 和 B 都是有效的括号字符串,+ 代表字符串的连接。例如,"","()","(())()" 和 "(()(()))" 都是有效的括号字符串。 如果有效字符串 S 非空,且不存在将其拆分为 S = A+B 的方法,我们 阅读全文
posted @ 2019-06-02 23:05 Cyrus丶 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 设计一个找到数据流中第 K 大元素的类(class)。注意是排序后的第 K 大元素,不是第 K 个不同的元素。 你的 KthLargest 类需要一个同时接收整数 k 和整数数组 nums 的构造器,它包含数据流中的初始元素。每次调用 KthLargest.add,返回当前数据流中第 K 大的元素。 阅读全文
posted @ 2019-06-02 22:29 Cyrus丶 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 有一堆石头,每块石头的重量都是正整数。 每一回合,从中选出两块最重的石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。那么粉碎的可能结果如下: 如果 x == y,那么两块石头都会被完全粉碎; 如果 x != y,那么重量为 x 的石头将会完全粉碎,而重量为 y 的石头新 阅读全文
posted @ 2019-06-02 21:41 Cyrus丶 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 请判断一个链表是否为回文链表。 示例 1: 示例 2: 阅读全文
posted @ 2019-06-02 18:53 Cyrus丶 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 删除链表中等于给定值 val 的所有节点。 示例: 阅读全文
posted @ 2019-06-02 18:39 Cyrus丶 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 示例 2: 示例 3: 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O (n) 时间复杂度,且仅用 O 阅读全文
posted @ 2019-06-02 18:28 Cyrus丶 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 示例 2: 解法二:由于已经给定是排序链表,那么只要判断当前节点和下一个节点是否相同就行了 阅读全文
posted @ 2019-06-02 17:26 Cyrus丶 阅读(162) 评论(0) 推荐(0) 编辑