참고 자료 재학 대학의 '자료구조' 수업 자료 「Do it! 자료구조와 함께 배우는 알고리즘 입문 파이썬 편」 시바타 보요 지음 「2023 정보처리기사 필기 핵심 요약」 시나공 (44) 코딩 테스트를 위한 트리(Tree) 자료구조 10분 핵심 요약 - YouTube 내용 구성 트리란? 트리 관련 용어 이진 트리 이진 트리의 종류 편향 트리 포화 이진 트리 완전 이진 트리 1. 트리란? 트리는 사이클이 존재하지 않는 그래프의 특수한 형태이다. 데이터를 1:N의 계층적인 구조로 나타내는 자료구조로, 대표적으로 가계도가 그 예이다. 2. 트리 관련 용어 서브 트리: 하나의 트리에 속하는 또 다른 트리 위 그림에서 주황색 삼각형이 서브 트리이다. 루트 노드: 트리의 최상단 노드로, 부모 노드가 없다. A (주황..
참고 「취업을 위한 코딩 테스트이다 with 파이썬」 나동빈 지음 「Do it! 자료구조와 함께 배우는 알고리즘 입문 파이썬 편」 시바타 보요 지음 https://yabmoons.tistory.com/250 콘텐츠 개념 파이썬 구현 코드 시간 복잡도 장단점 퀵 정렬과 병합 정렬 선택 기준 대부분의 프로그래밍 언어에서 정렬 라이브러리는 속도가 빠른 퀵이나 병합 정렬을 기반으로 한다. 퀵 정렬 (Quick Sort) 개념 피벗pivot이라는 기준에 의해 리스트 내 큰 숫자와 작은 숫자를 교환한다. 피벗을 설정하는 기준은 다양하지만, 리스트의 첫 번째 원소를 피벗으로 설정하는 "호어 분할 방식"이 가장 대표적이다. 초록색이 피벗이고, 노란색 화살표는 5 다음 숫자에서부터 피벗보다 큰 값을 찾고, 파란색 화살표..
참고 「취업을 위한 코딩 테스트이다 with 파이썬」 나동빈 지음 모두를 위한 컴퓨터 과학 (CS50 2019) https://www.boostcourse.org/cs112/joinLectures/41488?isDesc=false 구성 요소 개념 파이썬 구현 코드 시간 복잡도 장단점 버블 정렬(Bubble Sort) 개념 데이터 내 인접한 두 요소를 비교하여 자리를 교환하거나 그대로 유지하는 정렬 방법이다. 위 그림은 버블의 각 단계를 나타낸 것으로, 파란색이 인접한 두 요소이다. 오름차순 정렬 기준, 왼쪽에 있는 값이 오른쪽에 있는 값보다 크다면 둘이 자리를 바꾼다. 이미 정렬되어 있는 상태(왼쪽 요소 < 오른쪽 요소)라면 그대로 다음 인덱스로 넘어간다. 데이터의 마지막 요소까지 비교가 끝나면, 가장 ..