본문 바로가기
반응형

알고리즘34

[알고리즘] 허프만 압축 알고리즘 (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.
[프로그래머스 - 구현] 신규 아이디 추천 카테고리 (Category) 작성 날짜 (Write Date) 최근 수정 날자 (Recent Write Date) 작성자 (Writer) Algorithm 2021.10.06. 22:01:50 2021.10.06. 22:01:50 Dev.Yang 1단계: new_id의 모든 대문자를 대응되는 소문자로 치환합니다. 2단계: new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자를 제거합니다. 3단계: new_id에서 마침표(.)가 2번 이상 연속된 부분을 하나의 마침표(.)로 치환합니다. 4단계: new_id에서 마침표(.)가 처음이나 끝에 위치한다면 제거합니다. 5단계: new_id가 빈 문자열이라면, new_id에 "a"를 대입합니다. 6단계: new_id의 길.. 2021. 10. 6.
반응형