刷题笔记
来源:互联网 发布:淘宝客服催好评用语 编辑:程序博客网 时间:2024/06/05 10:54
5.24 https://discuss.leetcode.com/topic/3294/accepted-c-o-n-solution
https://leetcode.com/problems/two-sum/#/description
更新
题目:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
咋一看要遍历俩次,其实只要遍历一次。倒过来看,倒着存数字进去,然后供后面的数字来查找。
代码如下:
class Solution {public:vector<int> twoSum(vector<int> &numbers, int target){ vector<int> result; unordered_map<int,int> u_map; for(int i = 0;i<numbers.size();i++) { int check_num = target - numbers[i]; if(u_map.find(check_num)!=u_map.end()) { //因为是倒过来查了 result.push_back(u_map[check_num]); result.push_back(i); return result; } u_map[numbers[i]]=i; } return result;}};
525 dfs不熟悉啊
https://leetcode.com/problems/path-sum/#/description
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:bool dfs(TreeNode* root, int sums, int sum){ if (root == NULL) return false; sums += root->val; if (root->left == NULL&&root->right == NULL) { if (sums == sum) return true; else return false; } if (root->left != NULL) if(dfs(root->left, sums, sum)) return true; if (root->left != NULL) if(dfs(root->right, sums, sum)) return true; //sums -= root->val; //return false;}bool hasPathSum(TreeNode* root, int sum) { int sumss = 0; return dfs(root, sumss, sum);}};
阅读全文
0 0
- Leetcode刷题笔记
- 腾讯刷题笔记
- LeetCode刷题笔记
- 刷题笔记(Linux)
- 刷题笔记(计算机网络)
- LeetCode刷题笔记
- nowcoder刷题笔记
- 算法刷题笔记
- 前端刷题笔记
- 刷题笔记
- 刷题笔记
- ACM刷题笔记
- leetcode刷题笔记
- [LeetCode] 刷题笔记(一)
- [LeetCode]刷题笔记二
- [leetCode]刷题笔记三
- **C++**C++刷题笔记
- **C++** 刷题笔记三
- 《UNIX网络编程 卷1》 笔记: readline函数 (不可重入版本)
- support-V4 冲突
- 求最小生成树 C语言描述
- 分页的第一种方式
- 17-JSCPC&&CCPC中南赛区 E-Partial Sum-区间求和&前缀和
- 刷题笔记
- BFC
- 分页的第二种方式
- 分页的第三种方式
- 事件冒泡及捕获
- babel-plugin-import
- 分页的第四种方式
- Camtasia Studio 9录制高清、超清视频教程
- pexpect之ssh_scp02