8.1 도입 중복되는 부분 문제 > 동적 계획법은 큰 의미에서 분할 정복과 같은 접근 방식을 의미합니다. 동적 계획법을 사용하는 알고리즘들 또한 처음 주어진 문제를 더 작은 문제들로 나눈 뒤 각 조각의 답을 계산하고, 이 답들로 부터 원래 문제에대한 답을 계산해 내기
내부적으로 이진수를 사용하는 컴퓨터들은 이진법 관련 연산들을 아주 빨리 처리한다. 이와 같은 특성을 이용해 정수의 이진수 표현을 자료 구조로 쓰는 기법을 비트마스크(bitmask)라고 부른다.더 빠른 수행 시간비트마스크 연산은 O(1)에 구현되는 것이 많다.더 간결한
배열의 각 위치에 대해 배열의 시작부터 현재 위치까지의 원소의 합을 구해 둔 배열입니다.다시 읽기
일렬로 늘어선 같은 종류의 자료 여러 개를 저장하기 위한 가장 기초적인 자료구조는 배열입니다. 배열과 같이 일렬로 늘어선 자료등르 저장하기 위한 자료 구조인 동적 배열과 연결 리스트에 대해 다룹니다. 이 두 자료 구조는 배열과 비슷하지만, 배열에서 비효율적이거나 할 수
큐와 스택, 데크는 일렬로 늘어선 같은 형태의 자료들을 저장합니다. 차이점은 어느 쪽 끝에서 자료를 넣고 뺄 수 있는가입니다.한쪽 끝에서 자료를 넣고 반대쪽 끝에서 자료를 꺼낼 수 있습니다. 따라서 가장 먼저 들어간 자료를 가장 먼저 꺼내게 됩니다. 이러한 속성을
검색 트리는 연결 리스트나 큐처럼 자료들을 담는 컨테이너이지만 자료들을 일정한 순서에 따라 정렬한 상태로 저장해 둡니다. 검색 트리는 이 점을 이용해 원소의 추가와 삭제만이 아니라 특정 원소의 존재 여부 확인등의 다양한 연산을 빠르게 수행합니다. 검색 트리중 가장