CS · Data Structure
무엇을 언제 고르나 - 그릇 고르기 한 장
이 시리즈에서 연 그릇들을 한 장에 놓는다. 고르는 순서는 셋이고, 대부분의 문제는 그중 첫 질문에서 끝난다.
자료를 어떻게 담나 9편
CS · Data Structure
그래프 - 관계 자체가 데이터다
노선도에서 값은 역이 아니라 역 사이의 선에 있다. 방향과 가중치와 순환이 갈리는 자리, 그리고 왜 순환을 그렇게 찾아다니는지까지.
자료를 어떻게 담나 8편
CS · Data Structure
힙과 우선순위 큐 - 제일 급한 것만 위로
전부 줄 세우지 않고 꼭대기 하나만 약속한다. 덜 약속해서 싸지는 그릇이고, 이름이 같은 메모리의 힙과는 아무 관계가 없다.
자료를 어떻게 담나 7편
CS · Data Structure
트리와 이진탐색트리 - 반씩 접어 들어간다
스무고개가 백만 개를 스무 번에 줄이는 원리 그대로다. 다만 질문을 잘못 고르면 스무고개가 하나씩 세는 일이 된다.
자료를 어떻게 담나 6편
CS · Data Structure
해시테이블 - 계산해서 자리를 정한다
찾지 않고 계산한다는 발상 하나로 O(1)이 나온다. 그 대신 충돌을 떠안고, 순서를 잃고, 가끔은 O(1)이 깨진다.
자료를 어떻게 담나 5편
CS · Data Structure
스택과 큐 - 어느 쪽에서 꺼내나
같은 더미인데 꺼내는 자리 하나만 바꿨다. 그 하나가 되돌리기와 작업 큐를 가르고, 스택 오버플로가 왜 나는지도 여기서 설명된다.
자료를 어떻게 담나 4편
CS · Data Structure
배열과 연결리스트 - 자리를 미느냐 고리를 바꾸느냐
중간에 하나 끼워 넣을 때 한쪽은 뒤를 전부 밀고 한쪽은 고리 둘만 바꾼다. 그런데도 실무가 거의 배열을 쓰는 이유까지.
자료를 어떻게 담나 3편
CS · Data Structure
빅오 - 몇 배로 늘어나나
빅오는 어려운 수학이 아니라 늘어나는 모양에 붙인 이름이다. 사람이 두 배로 오면 무엇이 두 배가 되고 무엇이 네 배가 되는지로 읽는다.
자료를 어떻게 담나 2편
CS · Data Structure
자료구조 - 담는 그릇이 속도를 정한다
자료구조는 빠른 것과 느린 것으로 나뉘지 않는다. 무엇을 싸게 하고 무엇을 비싸게 할지를 고르는 일이다. 그릇을 가르는 네 가지 질문부터 본다.
자료를 어떻게 담나 1편