摘要: problem1 1. 题目描述 一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。 2. 思路 找一个不同点,将所有数字分为两类。 其中,两个只出现一次的数字各出现在一个集合当中。 如何找最后一个不同 阅读全文
posted @ 2023-03-06 13:07 光風霽月 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 1. 题目描述 剑指 Offer 26. 树的子结 2. 思路 1.暴力,枚举 $A$ 中的每个节点,对于该节点 $dfs$ 查找 $B$,时间复杂度为 $O(N^2)$,$N$ 为节点数。经典的 $dfs$ 套 $dfs$,爆搜出奇迹!当然,爆搜归爆搜,不要忘了剪枝。小小的剪枝大大的优化。 2.好 阅读全文
posted @ 2023-03-06 13:05 光風霽月 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 1. 题目描述 和为s的连续正数序列 2. 思路 O(N) 数学做法。 等查求和公式,求根公式:$\frac{-b \pm \sqrt{bb - 4ac}}{2a}$ 求根公式在不少题目中的优化做法可能用到,但是需要注意,求根公式有乘法运算,对于数据比较大时,可能会溢出,这一点要格外小心。 O(N) 阅读全文
posted @ 2023-03-06 11:36 光風霽月 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 1. 题目描述 打印蛇形矩阵 2. 思路 状态机模拟 我称之为模拟优化,因为代码少,简洁,优化 3. 代码(模拟优化) class Solution { public: vector<int> spiralOrder(vector<vector<int>>& matrix) { int n, m; 阅读全文
posted @ 2023-03-06 10:57 光風霽月 阅读(8) 评论(0) 推荐(0) 编辑