전체 글 88

트리 순회 - 전위, 중위, 후위 (Preorder, Inorder, Postorder)

트리 순회(Tree Traversal)는 트리의 모든 노드를 특정 순서대로 방문하는 방법이다. 대표적으로 전위 순회, 중위 순회, 후위 순회 세 가지 방법이 있다.순회 방법의 차이세 가지 순회 방법은 루트(Root), 왼쪽(Left), 오른쪽(Right)을 방문하는 순서로 구분된다.전위 순회 (Preorder): Root → Left → Right중위 순회 (Inorder): Left → Root → Right후위 순회 (Postorder): Left → Right → Root예제 트리다음 트리를 사용하여 각 순회 방법을 살펴보자. c / \ a d \ \ b e1. 전위 순회 (Preorder Traversal)방문 순서: 루트 → 왼쪽..

프로그래밍 2025.11.03

이진 트리와 이진 탐색 트리의 차이

이진 트리와 이진 탐색 트리는 비슷해 보이지만 중요한 차이가 있다. 이진 탐색 트리는 이진 트리의 특수한 형태로, 추가적인 규칙을 따른다.이진 트리 (Binary Tree)이진 트리는 각 노드가 최대 2개의 자식 노드를 가지는 트리 구조다. 이것이 유일한 제약 조건이며, 노드의 값에 대한 순서나 규칙은 없다.예시: 5 / \ 3 8 / \9 1이 트리는 완벽히 유효한 이진 트리다. 각 노드가 최대 2개의 자식만 가지고 있기 때문이다. 하지만 값의 배치에는 특별한 규칙이 없다.이진 탐색 트리 (Binary Search Tree, BST)이진 탐색 트리는 이진 트리에 정렬 속성이 추가된 구조다. 다음 규칙을 반드시 만족해야 한다:왼쪽 서브트리의 모든 노드 오른쪽 서브트리의 모든 노드 > 부..

프로그래밍 2025.11.03

이진탐색 트리(BST)의 삽입 순서에 따른 성능 차이

이진탐색 트리는 삽입 순서에 따라 트리의 구조와 성능이 완전히 달라진다. 같은 데이터라도 어떤 순서로 삽입하느냐에 따라 최악의 성능부터 최적의 성능까지 나타날 수 있다.1. 오름차순 삽입의 문제점a, b, c, d, e를 순서대로 삽입한 경우:a \ b \ c \ d \ e오름차순으로 데이터를 삽입하면 트리가 오른쪽으로 완전히 편향된다. 이 경우 트리의 높이가 5가 되며, 키 e를 탐색하려면 총 5번의 비교가 필요하다. 이는 연결 리스트와 동일한 구조로, 시간복잡도가 O(n)이 되어 이진탐색 트리의 장점을 전혀 활용할 수 없다.2. 내림차순 삽입e, d, c, b, a를 순서대로 삽입한 경우:e/d/c/b/a내림차순으로 삽입하면 반대로 왼쪽으로 완전히 편..

프로그래밍 2025.11.03

東京に行く来年の計画

来年に日本に行く計画だ。具体的には日本の東京に行くつもり。果たして行けるか、ただ夢で終わるか分からないけど今日も頑張ってる!俺に東京はずっと探したユートピアだ。大阪は誰かと愛しならが多少安定的で暮らすのはいいけど、どうやら外国人に閉鎖的に社会な感じがある。言語も完璧するし、文化も全部理解してたらそういうことは問題がならないけど本人はまだそういう水準には到達できなかった。東京は様々な人々が多くて、各々個性が混じっている複雑な世界だ。もしかしたら俺がいるべき場所はそこかもしれない。今回の試験では総合点は合格ラインを超えたけれど、読解で落ちてしまった。少し残念な結果だけど、俺は諦めない。次の試験では必ず合格する。もちろん世の中のことは分からないから努力しても落ちてしまうことがある。それでも止めない。ずっと努力続けてる。今回の結果は残念だけど、今までは大丈夫だ。資格もしないと、日本語ももっと上..

일상 2025.09.06

실력의 벽을 넘어선 작혼 '전국팔도마작고수를 찾아서' 대회 참가 후기

이번에 작혼에서 전국대회가 열렸다. 한국 마작 최고수를 찾는 것인데 지역별로 예선을 치르고, 각 지역 1위가 모여 결선을 치르는 방식이었다.평소 마작을 즐겨하는 나로선 이 기회를 놓칠 수 없어 냅다 참가 신청했다.그러나 대회의 벽은 높았다. 실력에 자신있는 작사들이 모인 것인지 동탁에선 통하던 수가 통하지 않았고, 리치를 걸어도 번번이 허탕이었다.전반적으로 패가 대단히 빨랐고, 리치해도 중간에 끊기는 경우가 허다했다.-23500점으로 토비당한 판인데 리치를 4번이나 걸었으나 화료는 단 한번, 5번이나 방총당해 폭망한 모습이다.대회에 참가한 작사들은 컨셉을 맞춘, 화려한 캐릭터와 리치 배경음, 심지어 손 모양까지 세세한 부분까지 신경쓴 고수의 풍모가 한껏 느껴졌다.실력에 자신이 붙어 우승까진 아니라도 지역..

취미 2025.08.18

데이터 모델링

ER 다이어그램의 기본 구조데이터 모델링은 데이터베이스 구조를 설계하기 위한 과정으로 데이터의 흐름과 저장 방식, 데이터 간 관계를 명확히 정의하는데 중요한 역할을 한다. 그 중에서도 ER 다이어그램(Entity-Relationship Diagram)은 데이터 모델링에서 가장 널리 사용되는 도구 중 하나이다. ER 다이어그램은 데이터베이스의 개체(Entity)와 개체 간 관계(Relationship)를 시각적으로 표현하여 시스템의 구조와 동작을 이해하는데 도움을 준다.비정규화비정규화는 데이터베이스 설계의 한 기법으로 데이터의 중복을 의도적으로 허용하여 성능을 최적화하는 방법이다. 일반적으로 데이터베이스는 정규화를 통해 중복을 최소화하고 무결성을 유지하는 방향으로 설계된다. 그러나 비정규화는 이러한 정규화..

프로그래밍 2025.07.30