-
[백준 / javascript] 1991번 트리 순회알고리즘 2023. 4. 10. 15:27728x90
https://www.acmicpc.net/problem/1874
// 1991 : 트리 순회 const readFile = process.platform === 'linux' ? '/dev/stdin' : 't.txt'; const [n, ...input] = require('fs') .readFileSync(readFile) .toString() .trim() .split('\\n'); const nodes = input.map((v) => v.split(' ')); const trees = nodes.reduce((acc, [node, left, right]) => { acc[node] = { left, right }; return acc; }, {}); const traversePreOrder = (node) => { if (node === '.') { return ''; } const { left, right } = trees[node]; return node + traversePreOrder(left) + traversePreOrder(right); }; const traverseInOrder = (node) => { if (node === '.') { return ''; } const { left, right } = trees[node]; return traverseInOrder(left) + node + traverseInOrder(right); }; const traversePostOrder = (node) => { if (node === '.') { return ''; } const { left, right } = trees[node]; return traversePostOrder(left) + traversePostOrder(right) + node; }; console.log(traversePreOrder('A')); console.log(traverseInOrder('A')); console.log(traversePostOrder('A'));
728x90'알고리즘' 카테고리의 다른 글
[백준 / javascript] 13305번 주유소 (0) 2023.04.10 [백준 / javascript] 1543번 문서 검색 (0) 2023.04.10 [백준 / javascript] 1874번 스택 수열 (0) 2023.04.10 [백준 / javascript] 1021번 회전하는 큐 (0) 2023.04.10 [백준 / javascript] 1065번 한수 (0) 2023.04.10