computer-science-in-javascript
computer-science-in-javascript copied to clipboard
Tree.es6 Remove. Add sibling node to BFS queue
Splice changes array.length and shifts remaining elements 1 place.
Test: const tree = new Tree(); tree.add('ceo'); tree.add('cto1', 'ceo'); tree.add('cto2', 'ceo'); tree.add('cto3', 'ceo'); tree.add('dev1', 'cto1'); tree.add('dev2', 'cto1'); tree.add('dev3', 'cto1'); tree.add('dev2', 'dev3'); tree.add('dev1', 'cto2'); tree.add('dev2', 'cto2'); tree.add('dev3', 'cto2'); tree.add('dev1', 'cto3'); tree.add('dev2', 'cto3'); tree.add('dev3', 'cto3'); tree.printByLevel(); tree.remove('dev2'); tree.printByLevel();
Current: dev2 lingers as a child of dev3. mentor/mentee relationship.
Change: dev2 is removed