tfind method

dynamic tfind(
  1. dynamic key,
  2. List rootp,
  3. int compar(
    1. dynamic,
    2. dynamic
    )
)

Binary tree find.

Implementation

dynamic tfind(dynamic key, List<dynamic> rootp, int Function(dynamic, dynamic) compar) {
  if (rootp.isEmpty || rootp[0] == null) return null;
  _TNode? curr = rootp[0];
  while (curr != null) {
    int c = compar(key, curr.key);
    if (c == 0) return curr.key;
    if (c < 0) {
      curr = curr.left;
    } else {
      curr = curr.right;
    }
  }
  return null;
}