/**
* 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 findTarget(TreeNode* root, int k) {
vector<int> v;
getArray(root,v);
for(int i =0 ,j=v.size();i<j;){
if(v[i]+v[j] == k){
return true;
}else if(v[i]+v[j]<k){
i++;
}else{
j--;
}
}
return false;
}
void getArray(TreeNode* root,vector<int>& v){
if(root!=NULL){
getArray(root->left,v);
v.push_back(root->val);
getArray(root->right,v);
}
}
};
二叉搜索树,没啥说的,注意vector<int>& v写法
07-12
07-12
07-12
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交