trie tree
class Node { int val; Node left; Node right; } class Trie { Node root; Trie() { this.root = new Node(); } void insert(int val) { Node curr = this.root; while (curr != null) { if (curr.val <= val) { if (curr.right == NULL) { curr.right = new Node(val); return; } curr = curr.right; } else { if (curr.left == NULL) { curr.left = new Node(val); return; } curr = curr.left; } } } int findKth(int k) { return findKth(root, k); } int findKth(Node curr, int k) { if (curr == null) { return -1;