package com.interview.basics.search.array.unsorted;
import com.interview.basics.model.tree.BinaryTreeNode;
import com.interview.basics.model.tree.RedBlackTree;
/**
* http://www.cs.princeton.edu/~rs/talks/LLRB/RedBlack.pdf
*/
public class RBTSearcher<T extends Comparable<T>> extends BSTSearcher<T>{
private RedBlackTree<T> tree;
public RBTSearcher(T[] input) {
super(input);
tree = new RedBlackTree<T>(input);
}
@Override
public T find(T item) {
BinaryTreeNode<T> node = tree.search(item);
return node != null? node.value : null;
}
}