class Solution {
public:
bool verify(vector<int>& sequence, int l, int r) {
if (l >= r) return true; // base case
int root = sequence[r];
int lr=l; // left boundary of the right subtree
for (; lr<r; lr++) {
if (sequence[lr] > root) break;
}
for (int i=lr; i<r; i++){
if (sequence[i] < root) return false;
}
return verify(sequence, l,lr-1) && verify(sequence, lr, r - 1);
}
bool VerifySquenceOfBST(vector<int> sequence) {
if (sequence.size() == 0) return false;
return verify(sequence, 0, sequence.size() - 1);
}
};
Segfault => index不对



京公网安备 11010502036488号