189. 轮转数组
问题189 轮转数组 ★☆☆☆☆ https://leetcode-cn.com/problems/rotate-array/ 这个题目比较直接的想法就是把右侧的k个元素暂存下来,右移处理左侧len-k个元素,这样左侧空出k个位置,再把暂存的右侧k个元素填补上即可。这种处理方法的空间复杂度是O(N). 如果期望以O(1)的空间复杂度来解决呢?简单一点的办法是每次右移1个元素,操作k次即可...
问题189 轮转数组 ★☆☆☆☆ https://leetcode-cn.com/problems/rotate-array/ 这个题目比较直接的想法就是把右侧的k个元素暂存下来,右移处理左侧len-k个元素,这样左侧空出k个位置,再把暂存的右侧k个元素填补上即可。这种处理方法的空间复杂度是O(N). 如果期望以O(1)的空间复杂度来解决呢?简单一点的办法是每次右移1个元素,操作k次即可...
问题187 重复的DNA序列 ★★★☆☆ https://leetcode-cn.com/problems/repeated-dna-sequences/ 在知晓题目主标签是sliding window的条件下,还是比较容易想到通过滑动窗口来降低计算成本。但是具体怎样将一个固定长度的子串映射为某个特征值呢?一开始我想的是把这个子串当作一个26进制的数来计算,但是很快发现溢出问题。后面参考了...
问题1664 生成平衡数组的方案数 ★★☆☆☆ https://leetcode.cn/problems/ways-to-make-a-fair-array/ 题目本身很容易理解,去掉数组中的一个元素,剩余元素按奇偶位置取和,取和相等的称为pair. 给定一个数组,计算有多少个位置满足pair。我往往是先从暴力解法入手,对于这个题目,暴力解法很简单,挨个位置遍历嘛,遍历每个位置时计算剩余元...
问题1604 警告一小时内使用相同员工卡大于等于三次的人 ★☆☆☆☆ https://leetcode.cn/problems/alert-using-same-key-card-three-or-more-times-in-a-one-hour-period/ 这个题目从思路来说我觉得并不难,属于比较侧重代码书写的题目。按用户归集打卡时间后遍历,遍历过程中先排序,然后判断是否存在一个小时...
问题1222 可以攻击国王的皇后 ★☆☆☆☆ https://leetcode.cn/problems/queens-that-can-attack-the-king/ 结合示例,题目并不难理解,一个国际象棋棋盘,有一个位置是king,其他一些位置是queen,沿着横向、纵向、对角三条线,离king最近的queen可以直接攻击king,注意必须是最近的,不能隔着queen去攻击king,现...
问题445 两数相加 ★☆☆☆☆ https://leetcode.cn/problems/add-two-numbers-ii/ 这个题目和问题2相似,区别在于问题2里链表是倒序表示的整数,这里链表是正序表示的整数。由于整数加法是从最低位到最高位处理,所以问题2相对简单,只需要注意进位问题就可以了。那么比较直接的想法,就是把链表做反转,相加以后再反转得到最终结果。然而题目中也指出,有没有...
问题2 两数相加 ★☆☆☆☆ https://leetcode.cn/problems/add-two-numbers/description/ 这个题目本身难度不大,主要考察的是基本的链表操作能力,与合并两个有序链表有一定相似之处。 public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNod...
问题142 有环的链表 ★☆☆☆☆ https://leetcode-cn.com/problems/linked-list-cycle-ii/ 判断链表是否有环,有环则返回环的起始节点,否则返回null. 环的起始节点就是链表(传统意义上的)最后一个节点的下一个节点,所以记录每个节点的访问状态,当访问到某个访问状态是已访问的节点的时候,这个节点就是环的起始节点。 public Lis...
问题797 所有可能的路径 ★★☆☆☆ https://leetcode-cn.com/problems/all-paths-from-source-to-target/ 这个题目简单来说就是计算有向无环图的指定两个节点之间的所有路径。从DFS的角度来考虑,从某个节点开始,循环遍历所有它直接指向的节点,每次循环又是一个DFS,所谓深度优先。在遍历的过程中,需要维护一个结果list和一个当前...
问题547 省份数量 ★★☆☆☆ https://leetcode-cn.com/problems/number-of-provinces/ 这个题目和问题130-被围绕的区域、问题200-岛屿数量有一些相似之处,问题130和问题200这些题目里,每个元素是独立的个体,以自身的值为依据做连通。而这个题目里元素值表示的是这些个体之间是否连通,等于是给了一个图,要计算的是有多少连通的子图。对图...