반응형
class node {
private data: String;
public left: node|null;
public right: node|null;
constructor(data: String) {
this.data = data;
this.left = null;
this.right = null;
}
preorder(cur:node|null) {
if (cur == null) {
return;
}
console.log(cur.data);
this.preorder(cur.left);
this.preorder(cur.right);
}
inorder(cur:node|null) {
if (cur == null) {
return;
}
this.preorder(cur.left);
console.log(cur.data);
this.preorder(cur.right);
}
postorder(cur:node|null) {
if (cur == null) {
return;
}
this.preorder(cur.left);
this.preorder(cur.right);
console.log(cur.data);
}
}
class BinaryTree {
public root: node|null;
constructor() {
this.root = null;
}
}
const binaryTree = new BinaryTree();
binaryTree.root = new node("A");
binaryTree.root.left = new node("B");
binaryTree.root.right = new node("C");
binaryTree.root.left.left = new node("D");
binaryTree.root.left.right = new node("E");
binaryTree.root.right.left = new node("F");
binaryTree.root.right.right = new node("G");
binaryTree.root.right.left.left = new node("L");
binaryTree.root.right.left.right = new node("M");
Node라는 키워드가 타입스크립트에 이미 명세되어있어 node라고 표기하였다.
insert, remove, delete 코드는 이진 탐색트리가 아니기에 따로 구현하지 않았다.
간단하게 타입스크립트 연습 겸 자료구조, 알고리즘 코드를 올려보고자 한다.
반응형
'Basic > TypeScript' 카테고리의 다른 글
error TS18046: 'err' is of type 'unknown' 에러 해결 (0) | 2023.05.12 |
---|---|
[Typescript] Type guard 개념 및 예시 (0) | 2023.03.19 |
TypeScript란? (0) | 2022.10.30 |