• 자료구조 - BST 학습

    |

    이진 탐색 트리(Binary-Search-Tree)

    • 모든 원소는 상이한 키를 갖는다.
    • 왼쪽 서브트리에 있는 원소의 키들은 그 루트의 키보다 작다.
    • 오른쪽 서브트리에 있는 원소의 키들은 그 루트의 키보다 크다.
    • 왼쪽 서브트리와 오른쪽 서브트리도 모두 이진 탐색 트리이다.
  • 자료구조 - 이진트리 학습

    |

    이진트리(Binary Tree)란?

    • 어떤 노드의 자식 노드의 수가 최대 2개인 트리

    • 공집합 혹은 루트(root)와 왼쪽 서브 트리, 오른쪽 서브 트리로 이루어진 유한 집합, 각각의 서브 트리는 모두 이진 트리이다.

    • 트리는 connected acyclic graph

      • 루트 노드(root)를 반드시 가진다.
      • 트리를 구성하는 노드 간 단순 경로가 존재한다.
    • 트리는 1개 이상의 노드로 이루어진 유한 집합

      • 루트 노드(root)를 반드시 가진다.
      • 나머지 노드들은 분리집합 T1, …, Tn으로 분할 가능
        • T1, T2 등은 각각의 하나의 트리(서브 트리)가 된다.
  • ERD - MySQL Workbench 사용법_1

    |

    MySQL 이란?

    • MySQL은 전세계적으로 가장 널리 사용되고 있는 오픈 소스 데이터베이스이다.
    • 표준 데이터베이스 질의 언어 SQL(Structured Query Language)을 사용하는 개방 소스의 관계형 데이터베이스 관리시스템(RDBMS)이다.
    • 매우 빠르고, 유연하며, 사용하기 쉬운 특징이 있다.
    • 다중사용자, 다중 쓰레드를 지원하고, C, C++, Eiffel, 자바, 펄, PHP, Python 스크립트 등을 위한 응용프로그램 인터페이스(API)를 제공한다.
    • 유닉스나 리눅스, Windows 운영체제 등에서 사용할 수 있다.
    • MySQL 데이터베이스는 일반 사용자가 무료로 다운로드하여 사용할 수 있는 장점이 있다.
  • 알고리즘 문제- 완주하지 못한 자

    |
    • 이번 포스트에서는 오늘 해결했던 알고리즘 문제에 대한 다양한 해답에 대해 소개해볼 것이다.

    문제 : 완주하지 못한 선수

    문제 설명

    수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다.
    마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요.

  • 자료구조 - Circular Queue 학습

    |

    Circular Queue 란?

    • 원형 큐는 선형 큐의 문제점을 보완하기 위한 자료구조이다.
    • rear를 가르키는 포인터가 배열의 마지막 인덱스를 가르키고 있을 때, 앞쪽에서 Dequeue로 발생한 배열의 빈 공간을 활용 할 수 없다.
    • 원형큐에서는 배열의 첫 인덱스부터 다시 데이터 삽입이 가능하다.