2017.11.1 LeetCode - 653. Two Sum IV - Input is a BST
2017-11-01 19:01
302 查看
653. Two Sum IV - Input is a BST
Description
Given a Binary Search Tree and a target number, return true if there exist two elements in the BST such that their sum is equal to the given target.题意: 给你个二叉排序树,和一个k值,让你判断这里面是否有两个数的和为k
分析:直接把树上的值递归到数组里,然后Two Pointers ,O(n)的的时间复杂度里求出即可
参考函数
class Solution { public: void getnums(TreeNode* root,vector<int>& nums) { if(!root) return; getnums(root->left,nums); nums.push_back(root->val); getnums(root->right,nums); } bool findk(int k,vector<int>& nums) { int len = nums.size(); int l = 0,r = len-1,sum = 0; while(l < r) { if(nums[l] + nums[r] == k) { return true; } else if(nums[l] + nums[r] > k) { r--; } else { l++; } } return false; } bool findTarget(TreeNode* root, int k) { vector<int> nums; getnums(root,nums); return findk(k,nums); } };
相关文章推荐
- leetcode 653. Two Sum IV - Input is a BST
- Leetcode653. Two Sum IV - Input is a BST
- LeetCode 653. Two Sum IV – Input is a BST
- leetcode: 653. Two Sum IV - Input is a BST
- LeetCode653. Two Sum IV - Input is a BST
- 【LeetCode】653. Two Sum IV - Input is a BST
- Leetcode: 653. Two Sum IV - Input is a BST
- LeetCode 653. Two Sum IV - Input is a BST
- leetcode 653. Two Sum IV - Input is a BST
- LeetCode - 653. Two Sum IV - Input is a BST
- [LeetCode] 653. Two Sum IV - Input is a BST 两数之和之四 - 输入是二叉搜索树
- 【LeetCode】653. Two Sum IV - Input is a BST 解题报告
- leetcode653. Two Sum IV - Input is a BST
- leetcode 653. Two Sum IV - Input is a BST 中序遍历 + 深度优先遍历DFS
- 【LeetCode】653. Two Sum IV - Input is a BST
- [Leetcode] 653. Two Sum IV - Input is a BST 解题报告
- LeetCode - 653. Two Sum IV - Input is a BST
- <easy>LeetCode Problem -- 653. Two Sum IV - Input is a BST
- LeetCode-653. Two Sum IV - Input is a BST
- leetcode 653. Two Sum IV - Input is a BST两个二叉搜索树中的和