searchNode<E> function

EasyTreeNode<E>? searchNode<E>(
  1. List<EasyTreeNode<E>>? nodes,
  2. Key? key
)

Implementation

EasyTreeNode<E>? searchNode<E>(List<EasyTreeNode<E>>? nodes, Key? key) {
  if (key == null || nodes == null) return null;
  List<EasyTreeNode<E>> stack = [];
  stack.addAll(nodes);
  while (stack.length > 0) {
    EasyTreeNode<E> temp = stack.removeAt(0);
    if (!temp.isLeaf) stack.insertAll(0, temp.children!);
    if (key == temp.key) return temp;
  }
  return null;
}