LeetCode组队学习
永不停歇的疯狂
这个作者很懒,什么都没留下…
展开
-
Datawhale-LeetCode编程实践组队学习Task17
344. 反转字符串class Solution {public: void reverseString(vector<char>& s) { int n = s.size(); int left = 0, right = n - 1; int tmp; while (left < right) { tmp = s[left]; s[left原创 2021-01-30 00:46:15 · 118 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task16
237. 删除链表中的节点/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: void deleteNode(ListNode* node) { node->val原创 2021-01-28 20:46:38 · 110 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task15
231. 2的幂class Solution {public: bool isPowerOfTwo(int n) { if (n <= 0) return false; return (n&(n - 1)) == 0; }};235. 二叉搜索树的最近公共祖先/** * Definition for a binary tree node. * struct TreeNode { * int val; * Tre原创 2021-01-28 00:49:06 · 108 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task14
215. 数组中的第K个最大元素class Solution {public: int findKthLargest(vector<int>& nums, int k) { int n = nums.size(); sort(nums.begin(), nums.end()); return nums[n - k]; }};217. 存在重复元素class Solution {public: bool原创 2021-01-27 00:50:22 · 84 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task13
160. 相交链表class Solution {public: ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) { if(headA == nullptr || headB == nullptr) return nullptr; ListNode* cur_a = headA; ListNode* cur_b = headB;原创 2021-01-26 01:21:41 · 85 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task12
146. LRU 缓存机制class LRUCache {private: struct DLinkedNode { int key, val; DLinkedNode* prev; DLinkedNode* next; DLinkedNode():key(0), val(0), prev(nullptr), next(nullptr){} DLinkedNode(int _key, int _val):k原创 2021-01-24 00:43:52 · 90 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task11
136. 只出现一次的数字class Solution {public: int singleNumber(vector<int>& nums) { int ans = 0; for (int n : nums) { ans ^= n; } return ans; }};141. 环形链表/** * Definition for singly-link原创 2021-01-23 00:10:03 · 55 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task10
121. 买卖股票的最佳时机class Solution {public: int maxProfit(vector<int>& prices) { // int n = prices.size(); // if(n == 0 || n == 1) // return 0; // vector<int> dp(n + 1); // int ans = prices[1] - p原创 2021-01-21 23:51:46 · 66 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task09
88. 合并两个有序数组class Solution {public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { for (int i = 0; i != n; ++i) { nums1[m + i] = nums2[i]; } sort(nums1.begin(), nums1.end());原创 2021-01-20 23:36:04 · 44 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task08
62. 不同路径class Solution {public: int uniquePaths(int m, int n) { vector<vector<int> > dp(m, vector<int>(n, 1)); for(int i = 1; i < m; i++) { for(int j = 1; j < n; j++) { dp[i][j] = dp原创 2021-01-19 23:16:18 · 58 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task07
59. 螺旋矩阵 IIclass Solution {public: vector<vector<int>> generateMatrix(int n) { vector<vector<int>> res(n, vector<int>(n, 0)); if (n == 0) return res; int num = 1; int left = 0, right = n -原创 2021-01-19 01:43:51 · 68 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task06
43. 字符串相乘class Solution {public: string multiply(string num1, string num2) { if (num1 == "0" || num2 == "0") { return "0"; } string ans = "0"; int m = num1.size(), n = num2.size(); for (int i = n -原创 2021-01-18 00:14:57 · 106 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task05
23. 合并K个升序链表/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(原创 2021-01-17 00:37:06 · 114 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task04
16. 最接近的三数之和class Solution {public: int threeSumClosest(vector<int>& nums, int target) { sort(nums.begin(), nums.end()); int n = nums.size(); int best = 1e7; // 根据差值的绝对值来更新答案 auto update = [&](i原创 2021-01-16 00:24:31 · 111 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task03
11. 盛最多水的容器class Solution {public: int maxArea(vector<int>& height) { int n = height.size(); int left = 0; int right = n - 1; int ans = INT_MIN; while (left <= right) { ans = ma原创 2021-01-13 23:21:09 · 85 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task02
7. 整数反转class Solution {public: int reverse(int x) { int sign = 1; long long y = x; if (x < 0) { sign = -1; y = -(long long)x; } long long ret = 0; while (y > 0)原创 2021-01-12 23:48:07 · 59 阅读 · 0 评论 -
Datawhale-LeetCode编程实践组队学习Task01
2. 两数相加/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {原创 2021-01-11 23:58:23 · 81 阅读 · 0 评论