From 7629b80b2e05ec6518648ecf9d1b2a525aa6c5ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EB=AF=BC=ED=98=9C?= Date: Thu, 5 Dec 2024 09:33:27 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=ED=8A=B8=EB=A6=AC=20=EC=88=9C=ED=9A=8C?= =?UTF-8?q?=ED=95=98=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...34\355\232\214\355\225\230\352\270\260.js" | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 "\355\212\270\353\246\254/\355\212\270\353\246\254 \354\210\234\355\232\214\355\225\230\352\270\260.js" diff --git "a/\355\212\270\353\246\254/\355\212\270\353\246\254 \354\210\234\355\232\214\355\225\230\352\270\260.js" "b/\355\212\270\353\246\254/\355\212\270\353\246\254 \354\210\234\355\232\214\355\225\230\352\270\260.js" new file mode 100644 index 0000000..ac5e4f4 --- /dev/null +++ "b/\355\212\270\353\246\254/\355\212\270\353\246\254 \354\210\234\355\232\214\355\225\230\352\270\260.js" @@ -0,0 +1,46 @@ + // 1 + // 2 3 +// 4 5 6 7 + +const 전위순회 = (nodes, idx) => { + if(idx < nodes.length) { + let course = nodes[idx] + ' '; + course += 전위순회(nodes, idx * 2 + 1); + course += 전위순회(nodes, idx * 2 + 2); + return course; + } + + return ""; +} + +const 중위순회 = (nodes, idx) => { + if(idx < nodes.length) { + let course = 중위순회(nodes, idx * 2 + 1); + course += nodes[idx] + ' '; + course += 중위순회(nodes, idx * 2 + 2); + return course; + } + + return '' +} + +const 후위순회 = (nodes, idx) => { + if(idx < nodes.length) { + let course = 후위순회(nodes, idx * 2 + 1); + course += 후위순회(nodes, idx * 2 + 2); + course += nodes[idx] + ' '; + return course; + } + + return '' +} + +function solution(nodes) { + return [ + 전위순회(nodes,0).slice(0, -1), + 중위순회(nodes,0).slice(0, -1), + 후위순회(nodes,0).slice(0, -1) + ] +} + +console.log(solution([1, 2, 3, 4, 5, 6, 7])) \ No newline at end of file