摘要: 题目核心是矩阵遍历。以前做过类似的题,不过是正方形的情况。我都是由外向内,层一个for循环,四个方向一个for循环,坐标计算相对复杂。 换一种思路,记矩阵左上角坐标(i1,j1),右下角(i2,j2)。一个大的while循环,按照四个方向遍历,缩小矩阵。其实思路和之前一样,只不过规避掉了坐标繁琐的计 阅读全文
posted @ 2018-06-02 23:34 約束の空 阅读(109) 评论(0) 推荐(0)
摘要: 判断链表有没有环,用Floyd Cycle Detection算法,用两个快慢指针。 142是141的进阶,需要额外判断环的起点。 详见 https://leetcode.com/problems/linked-list-cycle-ii/solution/ 中的推导,不过里面应该是 F=(n-1) 阅读全文
posted @ 2018-06-02 18:45 約束の空 阅读(95) 评论(0) 推荐(0)
摘要: 判断是否有循环的问题。 解法一:可以用hash表将出现过的值保存起来,再次出现即说明有循环。 解法二:应用Floyd Cycle Detection算法,设一个快变量一个慢变量。如果循环存在,它们一定会相遇。 阅读全文
posted @ 2018-06-02 16:28 約束の空 阅读(95) 评论(0) 推荐(0)