binary digit, 1 : Presence0 : Absencebit로는 두가지 값 0/1을 나타냄bit 하나가 두가지 값을 나타낼 수 있으므로N개의 bit는 2^N개를 나타낼 수 있다!이 bit를 사용하여 컴퓨터가 Data를 나타냄DataType , particu
Big O Notation 이라는 것은 여러 알고리즘의 성능을 판단할 수 있는 지표 Big O Notation Big O Notation이란 알고리즘의 복합도에 대한 상대적인 표현이며, 여러 알고리즘의 성능을 비교/판단해 볼 수 있는 지표이다. 여러 문서나 자료에서
이 글에선 python에서 주로 사용되는 자료구조인 List, Tuple, Set, Dictionary에 대한 기본 개념과, 장단점과 time complexity에 입각해 어느 상황에 사용하면 좋은지를 알아본다.
Array는 원래 length가 fixed 되어있다!!! dynamic array, python의 경우 list가 dynamic array로 구현되어 있다. 첫 array가 내용물에 비해 capacity가 더 크게 설정되어 있다. 만약 아이템을 계속 더하다가 꽉차면
Linked List와 Doubly Linked List
stack LIFO, 가장 아래를 base, 가장 위를 Top, 새로울 수록 top 쪽에 오래될수록 base에\ js event stack~ > Stack() creates a new stack that is empty. It needs no parameters
해쉬 테이블이란 item search를 빠르게 할 수 있다는 장점을 갖는 collection of item이다. 이러한 Hash Table의 각 position을 slot이라고 하며, 이 slot에 item을 담을 수 있게 된다. 이러한 Hash Table은 평균적인
Sequential Search linear search라고도 한다. 0번 index부터 차근차근 search해 나간다. if ordered. 원하는 값이 나오거나, 그 값보다 큰 값이 나오면 멈추면된다. ordered present Bestcase worstca
Bubble Sort, Selection Sort, Insertion Sort, Merge Sort의 원리를 이해하고, 직접 구현해본다.
Tree Tree data structure 에 대한 구조와 특징, 여러 종류의 tree를 알아본다.
bst property : parent보다 작은 수는 left subtree, parent 보다 큰 수는 right subtree에 속하게 된다.실제로 문제에도 자주 나오고 구현을 알아야할 Tree는 BST이다. BST는 위 property를 만족하는 모든 binary
좀 더 general 하다 tree가 kind of graph라고 할 수 있다. vertex == node name == key Edge connect two vertices , 방향이 있을 수 없음 방향이 다 있으면 directed graph Weight, E
Kotlin의 Array와 collections으 알아보자
kotlin에서 stack 과 queue를 사용하는 법을 알아본다.
kotlin Graph, Tree, Heap, Priority Queue
그래프의 탐색 방법인 BFS와 DFS에 대해 복습 겸 정리해본다.
그래프에서의 최단 경로 알고리즘인 다익스트라와 플로이드-워셜을 복습 경 정리해본다.
Kotlin으로 Permutation과 Combination을 직접 구현해보자.
누적합 알고리즘에 대해 알아보고, 그 장점을 복습해본다.
이진 탐색(이분 탐색, Binary Search) 알고리즘에 대해 정리하고, 그 변형에 대해서도 알아본다.
여러 정렬 알고리즘을 Kotlin으로 구현해보고, time complexity 확인하기