이진 트리의 전위 순회 및 레벨 순회 구현

이진 트리는 다양한 방식으로 저장될 수 있으며, 대표적인 저장 방식은 다음과 같습니다. 연결 리스트 기반 저장: 각 노드가 자식 노드를 가리키는 포인터를 포함하는 방식입니다. 배열 기반 저장: 루트 노드를 인덱스 0에 저장하고, 인덱스 i 노드의 왼쪽 자식은 2*i + 1, 오른쪽 자식은 2*i + 2에 저장하는 방식입니다. 이 방식은 특정 상황에서 효율적일 수 있으나, 일 ...

7월 30일 06:48에 게시됨

8퀸 난제: 재귀와 반복을 활용한 백트래킹 구현

8퀸 난제는 체스판 위에 8개의 퀸을 서로 공격하지 않도록 배치하는 고전적인 백트래킹 문제다. 이번 글에서는 재귀적 접근과 반복적 접근 두 가지 방식으로 해결해본다. 재귀적 백트래킹 재귀 방식은 현재 행에 퀸을 배치하고, 유효성 검증 후 다음 행으로 진행하는 구조다. 모든 행에 성공적으로 배치되면 해답을 출력한다. #include <iostream> #include <c ...

7월 1일 02:16에 게시됨

이분 탐색과 깊이 우선 탐색 기반 문제 해결

T1. 이분 탐색: 정렬된 배열에서 값 찾기 정렬된 배열 내에서 특정 값을 찾아 그 인덱스를 반환하는 문제입니다. 배열 크기가 최대 106까지 가능하므로, 배열 선언 시 크기를 충분히 확보해야 합니다. 오류 원인: 배열 크기 지정이 부족 (105+7로 설정했으나, 106+7 필요) 핵심 전략: 이분 탐색은 값이 일치할 경우에도 왼쪽 경계를 찾기 위해 r = mid로 업데이트 #inc ...

6월 25일 21:05에 게시됨