강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

rhkdtjd124829 のプロフィール画像
rhkdtjd124829

投稿した質問数

非専攻者の専攻者追いつく - 資料構造(with JavaScript)

insertの実装

영상 중간에 0:10 1:23초 수정에 따른 코드 최종본

解決済みの質問

作成

·

131

1

class Node {
  constructor(value) {
    this.value = value;
    this.left = null;
    this.right = null;
  }
}

class BinarySearchTree {
  constructor() {
    this.root = null;
  }

  #insert(node, value) {
    if (node.value > value) {
      // 루트노드보다 작은 값이면
      if (node.left) {
        this.#insert(node.left, value);
      } else {
        node.left = new Node(value);
      }
    } else {
      // 루트노드보다 큰 값이면
      if (node.right) {
        this.#insert(node.right, value);
      } else {
        node.right = new Node(value);
      }
    }
  }
  insert(value) {
    if (!this.root) {
      this.root = new Node(value);
    } else {
      this.#insert(this.root, value);
      // 숙제 : 같은 값을 넣은경우 에러 처리 (alert, throw)
    }
  }
  search(value) {}
  remove(value) {}
}

const bst = new BinarySearchTree();
bst.insert(8);
bst.insert(10);
bst.insert(3);
bst.insert(1);
bst.insert(14);
bst.insert(6);
bst.insert(7);
bst.insert(4);
bst.insert(13);

영상 따라 했는데 안되면 해당 코드 참고 해보세용!

javascript코딩-테스트알고리즘

回答 1

0

안녕하세요, 인프런 AI 인턴입니다.

제공해주신 정보와 관련된 내용이 없어서 직접적인 답변을 드리지 못하는 점 양해 부탁드립니다. 프로그래밍과 관련한 더 구체적인 질문이 있으시면 도와드릴 수 있을 것 같습니다.

rhkdtjd124829 のプロフィール画像
rhkdtjd124829

投稿した質問数

質問する