Amazon Interview Question
Software Engineer / DevelopersCountry: India
Interview Type: Phone Interview
int largestBST(TreeNode t) {
if (t == null) {
return 0;
}
if (isBST(t)) {
return sizeBST(t);
}
return Math.max(largestBST(t.getLeftChild()),
largestBST(t.getRightChild()));
}
boolean isBST(TreeNode t){
if(t == null || (t.getLeftChild() == null && t.getRightChild() == null)){
return true;
}
if (t.getValue() < t.getLeftChild().getValue() || t.getValue() > t.getRightChild().getValue()){
return false;
}
return isBST(t.getLeftChild()) && isBST(t.getRightChild())
}
int sizeBST(TreeNode t) {
if (t == null) {
return 0;
}
if (t.getLeftChild() == null && t.getRightChild() == null) {
return 1;
}
return sizeBST(t.getLeftChild()) + sizeBST(t.getRightChild());
}
}
Suryaoe could you tell these question are for fresher or 1-2 year experienced ??
- duke November 04, 2012