본문 바로가기

알고리즘12

[알고리즘] ep1-4) 힙정렬(heap sort) 복습하고 오자!https://claremont.tistory.com/entry/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-ep1-3-%ED%9E%99heap [알고리즘] ep1-3) 힙(heap)*완전 이진 트리(Complete Binary Tree): 트리의 위부터 아래, 왼쪽부터 오른쪽의 순서로 빠짐없이 가득 차있는 이진 트리 ㅁ힙(heap): 가장 크거나 가장 작은 값을 빠르게 찾기 위해 만든 완전 이진 트claremont.tistory.com    ㅇ힙정렬(heap sort): 힙을 이용하여 정렬하는 방식"제자리 + unstable" O(nlog(n)) 1. 원소들을 전부 힙에 삽입한다.2. 힙의 루트는 남은 수들 중에서 최솟값(or 최댓값)을 가지므로 루트를 출력하고 힙에.. 2024. 7. 4.
[알고리즘] ep1-1) 우선순위 큐 ㅇ우선순위 큐(Priority Queue): 각 요소마다 우선순위를 부여하고 이 우선순위에 따라 요소를 처리하는 큐요소가 삽입될 때 우선순위가 함께 부여되며, 삭제 시에는 가장 높은 우선순위를 가진 요소가 먼저 삭제된다 활용 분야: CPU 작업 스케줄링, 네트워크 패킷 처리, 최단 경로 알고리즘(다익스트라 알고리즘 등) 등  [구현 방법 2가지]1. 리스트를 이용한 구현① 무순리스트로 구현: 리스트에 임의 순서로 저장e.g. 선택정렬  ② 순서리스트로 구현: 리스트에 키 정렬 순서로 저장e.g. 삽입정렬   2. 힙을 이용한 구현① 최대 힙 사용② 최소 힙 사용   일반적으로 우선순위 큐를 구현할 때는 힙을 사용하는 것이 가장 효율적이다(최대 힙 or 최소 힙)       출처 및 참고: 알고리즘-원리와.. 2024. 7. 3.
[자료구조] ep0) 자료구조란? 자료구조란 단어를 들었을 때 뭔가 막막하고 어려울 것 같은 느낌이 들지만 전혀 그렇지 않다쫄 필요가 전혀 없다 자료구조에서 자료는 영어로 Data 이 Data는 개발에서 변수와 구조체를 뜻한다우리가 변수를 선언할 때 앞에 자료형을 붙이지 않는가? e.g. int n따라서 자료구조라는 학문은 변수와 구조체의 구조화를 연구하는 분야이다 한번 일상속에서의 자료구조를 찾아보자ㅇ스택(stack): 그릇을 쌓아서 보관하는 것ㅇ큐(queue): 마트 계산대의 줄ㅇ리스트(list): 버킷 리스트ㅇ딕셔너리(dictionary): 영어사전ㅇ그래프(graph): 지도ㅇ트리(tree): 컴퓨터의 디렉토리(폴더) 구조 그렇다면 왜 이 자료구조가 중요한 것인가?물론 자료구조가 알고리즘의 선행되는 개념이기도 하고코딩테스트에 있어서.. 2024. 1. 18.