본문 바로가기
728x90
반응형

자료구조_알고리즘16

자료구조) 자료구조 자료구조 데이터를 목적에 맞게 체계적으로 정리하여 사용하는 것 단순구조 선형구조 비선형구조 파일구조 단순구조 2진수 정수/실수 문자/문자열 선형구조 리스트(배열) 연결리스트 - 단순 연결리스트, 이중 연결리스트, 원형 연결리스트 덱 스택 큐 비선형구조 트리 - 일반 트리, 이진 트리 그래프 - 방향 그래프, 무방향 그래프 파일구조 순차 파일 색인 파일 직접 파일 자주 등장하는 자료구조 선형 구조: stack, queue 트리 그래프 2022. 3. 18.
코딩테스트 연습) [1차] 뉴스 클러스터링 1. 입력되는 2개의 문자열을 모두 소문자로 변경 2. 리스트에 2글자씩 저장.isalpha() 3. 교집합, 합집합 구하기 - 더 짧은 리스트를 긴 리스트 비교 후 있으면 교집합 리스트에 넣고 삭제, 남은 긴 리스트 + 짧은 리스트 = 합집합 4. (교집합 / 합집합) * 65536 소수점 버림 2021. 6. 15.
알고리즘) 우선순위 큐, 힙 우선순위가 높은 데이터 순서로 자료를 삭제하는 자료구조 -> 가치가 높은 물건부터 꺼내서 확인하는 등 힙 -> 우선순위 큐를 구현하기 위해 사용하는 자료구조 중 하나 최소힙, 최대힙으로 분류 다익스트라 최단 경로 알고리즘 등 다양한 알고리즘에 사용됨 import heapq ### 최소 힙 def heapsort(iterable): h = [] result = [] for value in iterable: heapq.heappush(j, value) for i in range(len(h)): result.append(heapq.heappop(h)) return result result = heapsort([1, 3, 5, 7, 9, 2, 4, 6, 8, 0]) print(result) ### 최대 힙 de.. 2021. 6. 9.
알고리즘) 최단 경로 알고리즘 가장 짧은 경로를 찾는 알고리즘 1. 한 지점에서 다른 지점까지의 최단 경로 2. 한 지점에서 다른 모든 지점까지의 최단 경로 3. 모든 지점에서 다른 모든 지점까지의 최단 경로 -> 각 지점은 그래프에서 노드로 표현 -> 연결된 도로는 그래프에서 간선으로 표현 다익스트라 알고리즘(최단경로) - 특정한 노드에서 모든 노드로 가는 최단 경로를 계산 - 음의 간선이 없을 때 정상적으로 동작 -> 현실 세계에서는 음의 간선으로 표현되지 않는다 다익스트라 최단 경로 알고리즘은 그리디 알고리즘으로 분류 -> 매 상황에서 가장 비용이 적은 노드를 선택해 임의의 과정 반복 -> 길찾기 문제는 다이나믹 프로그래밍을 사용한다 순서 1. 출발 노드 설정 2. 최단 거리 테이블 초기화 3. 방문하지 않은 노드 중에서 최단 .. 2021. 6. 8.
728x90
반응형