트리 데이터를 탐색하고 저장하기에 유용한 구조를 가지고 있다. 데이터를 어떤 방식으로 저장하고 탐색하는지 알아보자. 트리의 특성을 활용하는 분야 자동 완성 기능 : 트리는 문자열 처리에도 많이 활용된다. 예를 들어 검색 엔진에서 자동 검색어 추천 기능도 트라이 trie라는 독특한 트리 구조를 활용한 것이다. 이를 활용하면 접두사나 패턴 검색을 쉽게 할 수 있다. DB : 데이터베이스를 쉽게 검색, 삽입, 삭제를 할 수 있도록 트리를 활용하여 데이터를 구조화하고 인덱싱한다. 이때 B- 트리나 B+ 트리를 많이 사용한다. 나무를 거꾸로 뒤집어 놓은 모양의 트리 트리를 구성하는 노드 노드중 가장 위에 있는 노드를 루트 노드 라고 한다. 앞의 그림에서는 맨 위에 있는 값 1(A)이 들어 있는 노드가 루트 ..
면접 질문1. 해시 테이블에서 사용하는 해시의 개념은 무엇이며, 이러한 자료 구조가 배열, 리스트와 같은 다른 자료 구조와 비교하여 어떤 장점을 가지나요? 해시 테이블이 실생활에서 어떻게 사용될 수 있는지 예를 들어 설명하세요.해시는 해시 함수를 사용하여 변환한 값을 인덱스로 삼아 키와 값을 저장하여 빠른 데이터 탐색을 제공하는 자료구조 입니다. 배열, 리스트 등은 인덱스를 활용하여 탐색을 빠르게 만들지만, 해시는 키를 활용해 데이터 탐색을 빠르게 합니다.해시는 키와 데이터를 일대일 대응하여 저장하므로, 키를 통해 바로 데이터에 접근할 수 있습니다. 인덱스(숫자)로만 접근하는 배열보다 사람에게 접근성이 좀 더 좋은 자료구조입니다.실생활에서의 예시로는 연락처가 있습니다. 최종으로 얻고자 하는 것은 번호 값..
https://product.kyobobook.co.kr/detail/S000210881884 코딩 테스트 합격자 되기: 파이썬 편 | 박경록 - 교보문고코딩 테스트 합격자 되기: 파이썬 편 | ★ 코딩 테스트 합격자가 되는 가장 확실한 방법! ★ 프로그래머스 제공, 전문가가 모여 엄선한 빈출 100문제로 철저하게 대비하세요신입 사원 코딩 테스트product.kyobobook.co.kr 해시 해시 함수를 사용해서 변환한 값을 인덱스로 삼아 키와 값을 저장하여 빠른 데이터 탐색을 제공하는 함수.보통은 인덱스를 활용하여 탐색을 빠르게 만들지만 해시는 key 를 활용해 데이터 탐색을 빠르게 한다. * 해시는 키와 데이터를 일대일 대응하여 저장하므로, 키를 통해 데이터에 바로 접근할 수 있다. 사람에게는 숫자..
yieldyield 는 함수 안에서 값을 반환하지만, 함수의 실행 상태를 유지한 채로 반환을 중단한다.yield를 만나면, 값을 반환하고, 그 함수는 "일시정지" 한 상태가 되어 나중에 다시 호출되면 그 지점부터 실행을 이어나가게 된다. yield 는 제너레이터 함수를 정의하거나 이터레러블 객체에 yield를 위임하는 데 사용되며, 제너레이터 함수는 호출될 때 제너레이터 객체를 반환한다. 이 객체는 이터레이터 처럼 next()를 호출할 때마다 값을 하나씩 반환한다. def yield_test(): yield 1 yield 2 yield 3gen = yield_test()print(type(gen)) # print(next(gen)) # 1print(next(gen)) # 2pri..
https://product.kyobobook.co.kr/detail/S000210881884 코딩 테스트 합격자 되기: 파이썬 편 | 박경록 - 교보문고코딩 테스트 합격자 되기: 파이썬 편 | ★ 코딩 테스트 합격자가 되는 가장 확실한 방법! ★ 프로그래머스 제공, 전문가가 모여 엄선한 빈출 100문제로 철저하게 대비하세요신입 사원 코딩 테스트product.kyobobook.co.kr 큐- 선입선출- 스택과 마찬가지로 삽입하는 연산을 푸시, 꺼내는 연산을 팝 큐의 특성을 활용하는 분야 대표적으로 여러 이벤트가 발생했을 때 발생한 순서대로 처리할 때 큐가 활용된다. 여러 이벤트가 발생했을 때 발생한 순서대로 처리할 때 큐가 활용된다. 그 밖의 큐의 특성을 활용한 분야는 다음과 같다. 작업 대기열 : 네..
https://www.acmicpc.net/problem/1914 하노이탑 규칙한 번에 하나의 원반만 이동할 수 있다.큰 원반이 작은 원반 위에 올려져서는 안 된다.원반은 항상 세 개의 막대 중 하나에 있어야 한다.하노이탑 알고리즘의 동작 원리는 다음과 같다. n-1개의 원판을 1번에서 2번 막대로 옮긴다2. n번째 원판을 3번 막대로 옮긴다3. n-1개의 원판을 2번에서 3번 막대로 옮긴다이는 크게 세 가지의 동작"n-1개를 start(시작막대)에서 6-start-end(보조막대) 로 옮기고" "남은 1개를 start(시작막대)에서 end(도착막대)로 옮기고" "n-1개를 6-start-end(보조막대) 에서 end(도착막대)로 옮기는" 것으로 나눌 수 있다. 재귀를 사용하여 N개의 원반 문제를 n-..