随笔分类 -  哈希表

摘要:一:解题思路 方法一:暴力破解法 Time:O(n^3),Space:(1) 方法二:利用双指针法可以优化时间复杂度,Time:O(n^2),Space:O(1) 二:完整代码示例 (C、C++、Java、Python) 方法一C: 方法二C: 方法一C++: class Solution { pu 阅读全文
posted @ 2020-04-07 21:10 repinkply 阅读(477) 评论(0) 推荐(0)
摘要:一:解题思路 这道题目介绍2种方法。 解法一:利用位运算来做,数组中所有的数字都是成对出现的,只有一个是单独出现的,那么我们可以利用异或的性质来做。Time:O(n),Space:O(1) 解法二:利用集合set的特性,把所有数字添加到集合中(每个数字只出现一次),然后将集合中的数字乘以2减去原来数 阅读全文
posted @ 2020-03-07 20:02 repinkply 阅读(218) 评论(0) 推荐(0)
摘要:一:解题思路 方法一:暴力破解法,Time:O(n^2),Space:O(1) 方法二:利用一个哈希表,Time:O(n),Space:O(n) 方法三:利用二分的思想。Time:O(log(n)),Space:O(1) 二:完整代码示例 (C、C++、Java、Python) 方法一C: int* 阅读全文
posted @ 2020-03-05 21:11 repinkply 阅读(295) 评论(0) 推荐(0)
摘要:一:解题思路 方法一:暴力法。Time:O(n^2),Space:O(1) 方法二:利用一个哈希表来保存另外一个数字以及数字出现的下标。Time:O(n),Space:O(n) 二:完整代码示例 (C,C++、Java、python) 方法一C: int* twoSum(int* nums, int 阅读全文
posted @ 2020-03-05 17:03 repinkply 阅读(249) 评论(0) 推荐(0)