Smallest String Starting From Leaf
Description
Given the root of a binary tree, each node has a value from 0 to 25 representing the letters 'a' to 'z': a value of 0 represents 'a', a value of 1 represents 'b', and so on.
Find the lexicographically smallest string that starts at a leaf of this tree and ends at the root.
(As a reminder, any shorter prefix of a string is lexicographically smaller: for example, "ab" is lexicographically smaller than "aba". A leaf of a node is a node that has no children.)
Example 1:

Input: [0,1,2,3,4,3,4] Output: "dba"
Example 2:

Input: [25,1,3,1,3,0,2] Output: "adz"
Example 3:

Input: [2,2,1,null,1,0,null,0] Output: "abc"
Note:
- The number of nodes in the given tree will be between
1and8500. - Each node in the tree will have a value between
0and25.
Solution(javascript)
const smallestFromLeaf = function (root) {
let min = null
const aux = (node = root, current = '') => {
const str = String.fromCharCode(97 + node.val) + current
if (!node.left && !node.right) {
if (!min) {
min = str
} else {
min = str.localeCompare(min) < 0 ? str : min
}
}
if (node.left) {
aux(node.left, str)
}
if (node.right) {
aux(node.right, str)
}
}
aux()
return min
}