본문 바로가기
반응형

#컴퓨터 과학 [Computer Science]/알고리즘 [Algorithm]8

[알고리즘] 허프만 압축 알고리즘 (Huffman Coding Algorithm) 📹 YouTube - 허프만 압축 알고리즘 강좌 (Huffman Coding Algorithm Tutorial) 허프만 압축 알고리즘 (Huffman Coding Algorithm)은 문자열을 문자 단위로 쪼개 빈도수를 세어 ㉮ 빈도가 높은 정보는 적은 비트 수를 사용하여 표현하고, ㉯ 빈도가 낮은 정보는 비트 수를 많이 사용하여 표현해서 전체 데이터의 표현에 필요한 비트의 양을 줄이는 원리의 알고리즘입니다.  허프만 압축 알고리즘의 원리는 아래와 같습니다. 문자열을 문자 단위로 빈도수에 따라 모두 나열합니다.단 한가지의 문자가 남을 때까지 아래의 작업을 반복합니다.나열 된 문자들로부터 가장 빈도가 낮은 것을 2가지 선택합니다.두 문자의 빈도수의 합을 부모 노드로 지정하고 문자를 자식 노드로 생성합니다.. 2024. 9. 2.
[알고리즘] ⏰ 주요 자료구조 시간 복잡도 (Time Complexity) 📹 YouTube - 개발자라면 이제는 알아야하는 Big O 설명해드림. 10분컷. 주요 자료구조에 대한 평균 시간 복잡도는 아래의 도표와 같습니다.평균 시간 복잡도 (Aveage Time Complexity)접근 (Access)탐색 (Search)삽입 (Insert)삭제 (Delete)배열 (Array)O(1)O(n)O(n)O(n)스택 (Stack)O(n)O(n)O(1)O(1)큐 (Queue)O(n)O(n)O(1)O(1)이중 연결 리스트 (Doubly Linked List)O(n)O(n)O(1)O(1)해시 테이블 (Hash Table)O(1)O(1)O(1)O(1)이진 탐색 트리 (Binary Search Tree)O (log n)O (log n)O (log n)O (log n)AVL 트리O (log .. 2024. 3. 5.
[알고리즘] 📚 용어 정리 공간 복잡도 (Space Complexity)  → 프로그램을 실행시켰을 때 필요로 하는 자원 공간의 양을 뜻합니다.시간 복잡도 (Time Somplexity) →  입력 크기에 대한 어떠한 알고리즘이 실행되는 데 걸리는 시간을 뜻하며, 주요 로직의 반복 횟수를 중점으로 측정됩니다.선형 자료 구조 (Linear DataStrucutre) → 요소가 일렬로 나열되어 있는 자료 구조를 뜻합니다. 대표적인 자료구조로는 스택, 큐, 배열, 연결리스트 등이 있습니다.비선형 자료 구조 (Non-Linear DataStructure) → 요소들을 일렬로 나열하지 않고 자료의 순서나 관계가 복잡한 자료 구조를 뜻합니다. 대표적인 자료구조로는 그래프, 트리 등이 있습니다.해시 테이블 (Hash Table) → 데이터들을.. 2024. 3. 5.
[Algorithm - Concept] AVL Tree (named after inventors Adelson-Velsky and Landis) [Algorithm - Concept] AVL Tree (named after inventors Adelson-Velsky and Landis) AVL 트리(AVL tree)는 가장 초기에 나온 균형 잡힌(balanced) 이진 탐색 트리이다. 1962년 G.M. Adelson-Velskii와 E.M. Landis 가 그들의 논문 "An algorithm for the organization of information" 을 통해 발표했고 그들의 이름을 따서 지어졌다. AVL 트리는 각각의 노드(node, 분기점)마다 왼쪽과 오른쪽 부분 트리(sub-tree)의 높이 차이에 대한 정보를 가지며 부분 트리의 높이 차이가 1보다 크지 않은 성질을 가진다. 균형 잡힌 AVL 트리는 n개의 원소가 있을 때 O(l.. 2019. 9. 4.
반응형