楼主: Myron2017
跳转到指定楼层
上一主题 下一主题
收起左侧

刷题记录帖子

🔗
 楼主| Myron2017 2020-11-12 00:07:49 | 只看该作者
全局:
LC 593 Valid Square

我想到了用边长做,然后利用边长的比必须是 sqrt(2) 来检查。



但是这个其实是不太对的,因为会出现如下这个情形。



但是我的解依然是对的,因为题目要求座标是整数,integer。那就没问题了。

说到官方答案的第二个还是很好的,就是根据 x 座标排序,派完了,就只有如下个组合了,





当然还有一种解就是如下这个帖子的内容, https://maxming0.github.io/2020/11/11/Valid-Square/,还是很好,直接检测 4 个相同的 小 value,然后 两个相同的 大 value。

回复

使用道具 举报

🔗
 楼主| Myron2017 2020-11-17 03:28:03 | 只看该作者
全局:
本帖最后由 Myron2017 于 2020-11-17 03:29 编辑

LC 845 Longest Mountain in Array

一开始的想法是求出差值,然后看 diff 数组的正负变化,但是这个显然不能实现 O(1) Space  和 One Pass。

其实,这个时候就应该想起 double pointers,对于数组, double pointers 是非常常用的思路。

参考这个解法,这个解法还真是巧妙,值得记忆!

回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-3 06:26:02 | 只看该作者
全局:
382. Linked List Random Node

失误了,居然没想到  Reservoir sampling.



回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-4 23:41:39 | 只看该作者
全局:
897        Increasing Order Search Tree

Easy 题,主要是 in order 然后 on the fly 修改 Linking of nodes

回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-5 00:45:06 | 只看该作者
全局:
1492 The kth Factor of n
老老实实做,注意下平方数 和 1~ sqrt(n) 即可



不过在视频上发现更加巧妙的解法,这里抄录下来,https://www.bilibili.com/video/BV1ha4y1H7vz



巧夺天工,巧妙利用了对称了 k 在 Python 中反转过来的 -k 作为倒着计数的特点。
回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-5 19:25:35 | 只看该作者
全局:
605 Can Place Flowers

啊,还是太年轻,不知道优化。这道题目这个视频讲解的很好,https://www.bilibili.com/video/BV1Uz4y1k7xU

学习了,Greedy + Adding Two Zeros to the end of the list 因为在 list end 添加比在头上添加更加快!

我的代码,



但是原作者的更加 优秀代码,




回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-7 14:06:15 | 只看该作者
全局:
117. Populating Next Right Pointers in Each Node II

还是基本套路的变体,就是 level traverse 的变体。

回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-8 12:32:53 | 只看该作者
全局:
59 Spiral Matrix II

还是很好的题目,学习到了很多写法,感觉这个 optimized 的解法真是高明。代码简洁,也没那么多 if else 处理。

https://maxming0.github.io/2020/12/07/Spiral-Matrix-II/



回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-9 01:57:47 | 只看该作者
全局:
本帖最后由 Myron2017 于 2020-12-9 02:00 编辑

1010 Pairs of Songs With Total Durations Divisible by 60

之前暴力求解的还是 N^2 的复杂度,看了这个解答,发现了更加巧妙的解法,还是需要提高自己的水平。

https://www.youtube.com/watch?v=SAzo0a2cj1c

而且这解法还巧妙利用了 Counter 返回的 dict 对于未出现的 key 返回 0  的特性,简化了代码,同时固定了检测操作数,现在复杂度只有 N.


官网的这个解释也很不错。



回复

使用道具 举报

🔗
 楼主| Myron2017 2020-12-10 13:25:26 | 只看该作者
全局:
173 Binary Search Tree Iterator

其实最简单的就是直接 in-order 遍历,简单方便。但是初始化效率较差。

然后的好方法就是,用 stack 来做,参考这个帖子, https://maxming0.github.io/2020/ ... arch-Tree-Iterator/

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表