![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Leetcode
Xbox4KpsX
Master of HPC with Data Science. Seeking a challenging career with a progressive organization.
展开
-
【LeetCode】1720. 解码异或后的数组 | 异或的重要概念
https://leetcode-cn.com/problems/decode-xored-array/solution/1720-jie-ma-yi-huo-hou-de-shu-zu-xorde-z-54lk/解题思路^异或:就是看x和y是为不同,不相同为1,相同为0;任何一个数字(y)与0 异或的结果,都是这个数字本身y;最重要的性质:满足交换律 => x ^ y == y ^ x自已 ^ 自己,为0;任何一个数字(y)与0 异或的结果,都是这个数字本身y;0 ^ 1 =>原创 2021-05-06 09:44:16 · 131 阅读 · 0 评论 -
【LeetCode】146. LRU 缓存机制 | map和deque的使用
146. LRU 缓存机制思路:LRU缓存机制注意点:get和put操作都需要更新key的状态。因此使用一个deque,作为队列,先来的key,放在队首,后来的放在对尾。同时注意:get和put操作都需要更新key的状态。把key都放在对尾。使用map去保存key和value呀。class LRUCache {public: deque<int> deq; map<int, int> keyWords; int _count = 0;原创 2021-04-23 15:04:29 · 193 阅读 · 0 评论 -
【LeetCode】剑指 Offer 55 - II. 平衡二叉树AVL | 简单题 也要认真对待 |
平衡二叉树 | 简单题 也要认真对待 | 自己没什么厉害的, 但其实自己也挺厉害的。题目理解:第一次错误思路第二次思路(自上而下)第三次思路(自下而上)性能https://leetcode-cn.com/problems/ping-heng-er-cha-shu-lcof/题目理解:如何看是否为平衡二叉树:abs(左子树高度 - 右子树高度) <= 1, true;空, true;第一次错误思路思路:求根节点左右左子树的高度,然后看是否为平衡二叉树:错误的问题:在于只考虑了根节点原创 2021-04-19 11:49:28 · 98 阅读 · 0 评论 -
【LeetCode】每k个链表翻转 | 困难题依旧重拳出击
https://leetcode-cn.com/problems/reverse-nodes-in-k-group/解题思路对于链表的题目,每次都加个头发!否则你会找不到头。错误思路:123456789, k=4直接把1、5、塞进去0 -> 1 -> 2 -> 3 -> 4 -> 5一次遍历后,1->5第一次遍历8765,因为没有把头节点塞进去,所以1无法指向8,因此调了。正确代码class Solution {public: //原创 2021-04-08 16:22:40 · 62 阅读 · 0 评论 -
【LeetCode】简单题重拳出击 x 3 | triple kill | unordered_map | unordered_set
1. 两数之和https://leetcode-cn.com/problems/two-sum/解题思路要想清楚,unordered_map, 里面到底存的是什么? <value, index>注意点1:不能同一个值相加,因此m[nums[i]] = i,放在find后面,此时map里面还没有这个值;知识点1: 对于判断map的key是否存在,可以使用find,也可以使用count;代码// 要想清楚,unordered_map, 里面到底存的是什么? <value, ind原创 2021-04-07 11:01:16 · 85 阅读 · 0 评论 -
【LeetCode】 26. 删除有序数组中的重复项 | 80. 删除有序数组中的重复项 II | 双指针
双指针26. 删除有序数组中的重复项80. 删除有序数组中的重复项 II26. 删除有序数组中的重复项https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/思路:本题可以使用unqiue + erase, 但是目的在于练习双指针。class Solution {public: int removeDuplicates(vector<int>& nums) { // <=原创 2021-04-06 11:45:44 · 157 阅读 · 0 评论 -
【LeetCode】102. 二叉树的层序遍历 | 层序遍历LevelOrder
/* * 这题考察的就是层序遍历 * 总体思路: * 1. 定义一个队列q,存储每一层的节点,并入队root根节点; * 2. 定义一个二维数组,存储每一层的每一个节点的值 * 3. 只要队列q不为空,则继续遍历二叉树。 * 4. 定义一个vector eachRow,存储每一行的节点值,然后push_back到allRow */ class Solution {public: vector<vector<int>> levelOrder(TreeNode.原创 2021-04-05 10:07:39 · 205 阅读 · 0 评论 -
【LeetCode】1006. 笨阶乘 | 栈的运用
https://leetcode-cn.com/problems/clumsy-factorial/解题思路:遇到乘法的时候,栈顶元素和新的元素相乘,把结果入栈;遇到除法的时候,栈顶元素和新的元素相除,把结果入栈。遇到加法的时候,元素直接入栈;遇到减法的时候,元素取相反数入栈;所有运算处理过后,把栈里面所有元素相加,就是结果。coding思路:* / + - 的处理:使*/± 分别对应0,1,2,3 使用一个变量循环计数,决定每次计算结果;虽然有stakc容器适配器,但仍然可以使用原创 2021-04-04 00:38:56 · 63 阅读 · 0 评论 -
【LeetCode】回溯:78.子集 | 90.子集2
回溯78. 子集90. 子集278. 子集https://leetcode-cn.com/problems/subsets/class Solution {public: vector<vector<int>> result; void backtrack(vector<int>& nums, vector<int>& path, int start) { result.push_back(path);原创 2021-04-01 11:38:12 · 72 阅读 · 0 评论 -
【LeetCode】190. 颠倒二进制位 easy / bitset / stoul
简单题现在目标25分钟吧;中等题一个小时吧。重点:input: 无符号整型,output: 无符号整型。颠倒:是指首位颠倒,而不是01颠倒stoul(str, nullptr, 2) 第三个参数的作用是指明当前str是什么进制的。如果是00开头,就必须写清楚,否则该函数无法区分是10进制,还是2进制..class Solution {public: uint32_t reverseBits(uint32_t n) { bitset<32>..原创 2021-03-30 15:10:38 · 90 阅读 · 0 评论