摘要: 一:解题思路 方法一:递归法 Time:O(n),Space:O(n) 方法二:迭代法 Time:O(n),Space:O(1) 二:完整代码示例 (C++、Java、Python) 方法一C++: class Solution { public: ListNode* swapPairs(ListN 阅读全文
posted @ 2020-04-15 21:14 repinkply 阅读(134) 评论(0) 推荐(0)
摘要: 一:解题思路 采用二分搜索的思想来做。 Time:O(log(n)),Space:O(1) 二:完整代码示例 (C++版和Java版) C++: class Solution { public: int findPeakElement(vector<int>& nums) { if (nums.si 阅读全文
posted @ 2020-04-15 20:31 repinkply 阅读(506) 评论(0) 推荐(0)
摘要: 一:解题思路 Time:O(n),Space:O(1) 二:完整代码示例 (C++版和Java版) C++: class Solution { public: ListNode* oddEvenList(ListNode* head) { if (head == NULL || head->next 阅读全文
posted @ 2020-04-15 18:29 repinkply 阅读(118) 评论(0) 推荐(0)
摘要: 一:解题思路 Time:O(n^(target/min)),Space:O(target/min) ,其中n为数组长度,min是数组中的最小值。 如果把这个题目稍微修改一下,定义数组中每个下标的元素的为不同的元素,而且数组中可以包含重复的元素,那么最后的结果为多少? 二:完整代码示例 (C++版和J 阅读全文
posted @ 2020-04-15 17:17 repinkply 阅读(179) 评论(0) 推荐(0)
摘要: 一:解题思路 方法一:Time:O(n),Space:O(n) 方法二:Time:O(n),Space:O(1) 二:完整代码示例 (C++版和Java版) 方法一C++: class Solution { public: int jump(vector<int>& nums) { if (nums 阅读全文
posted @ 2020-04-15 16:41 repinkply 阅读(190) 评论(0) 推荐(0)
摘要: 一:解题思路 Time:O(n),Space:O(1) 二:完整代码示例 (C++版和Java版) C++: class Solution { public: ListNode* partition(ListNode* head, int x) { if (head == NULL) return 阅读全文
posted @ 2020-04-15 15:47 repinkply 阅读(148) 评论(0) 推荐(0)
摘要: 一:解题思路 add:Time:O(1),find,Time:O(n) 二:完整代码示例 (C++版和Java版) C++: class TwoSum { private: vector<int> data; public: void add(int number) { data.push_back 阅读全文
posted @ 2020-04-15 11:46 repinkply 阅读(122) 评论(0) 推荐(0)