diff --git a/4kyu/sort_binary_tree_by_levels/solution.js b/4kyu/sort_binary_tree_by_levels/solution.js new file mode 100644 index 0000000..0aedc39 --- /dev/null +++ b/4kyu/sort_binary_tree_by_levels/solution.js @@ -0,0 +1,18 @@ +function treeByLevels (rootNode) { + let queue = [rootNode]; + let values = []; + + while (queue.length > 0) { + let node = queue.shift(); + if (node === null) { + continue; + } + + values.push(node.value); + + queue.push(node.left); + queue.push(node.right); + } + + return values; +} diff --git a/README.md b/README.md index f6cdadb..413845a 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,7 @@ - [Priori Incantatem](https://www.codewars.com/kata/574d0b01b4b769b207000ca3) - [solution](4kyu/priori_incantatem) - [ES5 Generators(i)](https://www.codewars.com/kata/53c29a6abb5187180d000b65) - [solution](4kyu/es5_generators_i) - [Remove Zeros](https://www.codewars.com/kata/52aae14aa7fd03d57400058f) - [solution](4kyu/remove_zeros) +- [Sort binary tree by levels](https://www.codewars.com/kata/52bef5e3588c56132c0003bc) - [solution](4kyu/sort_binary_tree_by_levels) ### TS