본문 바로가기
반응형

알고리즘16

코드업 기초 100제 * 본 포스팅은 파이썬의 기초를 배우며 코딩테스트를 준비할 겸 코드업의 기초 100제 문제를 풀어보았고, 후기이자 새로 접한 문법을 기록하기 위하여 내용을 포스팅한다. 문제집 / Python 기초 100제 codeup.kr a = input() n = int(a, 16) print('%o'% n) ▲ 16진수를 입력받아 8진수로 출력 a = ord(input()) print(a) ▲ 유니코드를 10진수로 출력 a = int(input()) print(chr(a)) ▲ 10진수를 입력받아 유니코드로 출력 a = float(input()) print(format(a, ".2f")) ▲ 실수 1개를 입력받아 소숫점 이하 두 번째 자리까지의 정확도로 반올림한 값을 출력 a = int(input()) print(a 2023. 4. 1.
[알고리즘] 코딩 테스트에서 자주 출제되는 기타 알고리즘 * 본 포스팅은 나동빈 - 이코테 2021 강의 몰아보기 에서 학습한 내용을 포스팅합니다. 출처 동빈나 이코테 ■ 소수(Prime Number) 소수란 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 자연수로는 나누어 떨어지지 않는 자연수이다. 6은 1, 2, 3, 6으로 나누어떨어지므로 소수가 아니다. 7은 1과 7을 제외하고는 나누어 떨어지지 않으므로 소수이다. 코딩 테스트에서는 어떠한 자연수가 소수인지 아닌지 판별해야 하는 문제가 자주 출제된다. ■ 소수의 판별 : 기본적인 알고리즘(Python) # 소수 판별 함수(2이상의 자연수에 대하여) def is_prime_number(x): # 2부터 (x - 1)까지의 모든 수를 확인하며 for i in range(2, x): # X가 해당 수로 나누.. 2023. 2. 23.
[알고리즘] 그래프 이론 (신장 트리, 위상 정렬) * 본 포스팅은 나동빈 - 이코테 2021 강의 몰아보기 에서 학습한 내용을 포스팅합니다. 출처 동빈나 이코테 ■ 신장 트리 그래프에서 모든 노드를 포함하면서 사이클이 존재하지 않는 부분 그래프를 의미한다. 모든 노드가 포함되어 서로 연결되면서 사이클이 존재하지 않는다는 조건은 트리의 조건이기도 하다. ■ 최소 신장 트리 최소한의 비용으로 구성되는 신장 트리를 찾아야 할 때 어떻게 해야 할까? 예를 들어 N개의 도시가 존재하는 상황에서 두 도시 사이에 도로를 놓아 전체 도시가 서로 연결될 수 있게 도로를 설치하는 경우를 생각해보자 두 도시 A,B를 선택했을 때 A에서 B로 이동하는 경로가 반드시 존재하도록 도로를 설치한다. ■ 크루스칼 알고리즘 대표적인 최소 신장 트리 알고리즘이다. 그리디 알고리즘으로 .. 2023. 2. 22.
[알고리즘] 그래프 이론 (서로소 집합) * 본 포스팅은 나동빈 - 이코테 2021 강의 몰아보기 에서 학습한 내용을 포스팅합니다. 출처 동빈나 이코테 ■ 서로소 집합 서로소 집합(Disjoint Sets)란 공통 원소가 없는 두 집합을 의미한다. ■ 서로소 집합 자료구조 서로소 부분 집합들로 나누어진 원소들의 데이터를 처리하기 위한 자료구조 서로소 집합 자료구조는 두 종류의 연산을 지원 합집합(Union) : 두 개의 원소가 포함된 집합을 하나의 집합으로 합치는 연산이다. 찾기(Find) : 특정한 원소가 속한 집합이 어떤 집합인지 알려주는 연산이다. 서로소 집합 자료구조는 합치기 찾기(Union Find) 자료구조 라고 불린다. 여러 개의 합치기 연산이 주어졌을 때 서로소 집합 자료구조의 동작 과정은 다음과 같다. 합집합(Union) 연산을.. 2023. 2. 22.
[알고리즘] 최단 경로 알고리즘 (2) * 본 포스팅은 나동빈 - 이코테 2021 강의 몰아보기 에서 학습한 내용을 포스팅합니다. 출처 동빈나 이코테 최단 경로 알고리즘 (1) [알고리즘] 최단 경로 알고리즘 (1) * 본 포스팅은 나동빈 - 이코테 2021 강의 몰아보기 에서 학습한 내용을 포스팅합니다. 출처 동빈나 이코테 ■ 최단 경로 알고리즘 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미 kks2140501.tistory.com ■ 우선 순위 큐(Priority Queue) 우선순위가 가장 높은 데이터를 가장 먼저 삭제하는 자료구조이다. 예를 들어 여러 개의 물건 데이터를 자료구조에 넣었다가 가치가 높은 물건 데이터부터 꺼내서 확인해야 하는 경우 우선순위 큐를 이용할 수 있다. Python, C++, Java를 포함한 대부.. 2023. 2. 17.
[알고리즘] 최단 경로 알고리즘 (1) * 본 포스팅은 나동빈 - 이코테 2021 강의 몰아보기 에서 학습한 내용을 포스팅합니다. 출처 동빈나 이코테 ■ 최단 경로 알고리즘 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미한다. 다양한 문제상황 한 지점에서 다른 한 지점까지의 최단 경로 한 지점에서 다른 모든 지점까지의 최단 경로 모든 지점에서 다른 모든 지점까지의 최단 경로 각 지점은 그래프에서 노드로 표현 지점 간 연결된 도로는 그래프에서 간선으로 표현 ■ 다익스트라 최단 경로 알고리즘 개요 특정한 노드에서 출발하여 다른 모든 노드로 가는 최단 경로를 계산한다. 다익스트라 최단 경로 알고리즘은 음의 간선이 없을 때 정상적으로 동작 현실 세계의 도로(간선)는 음의 간선으로 표현되지 않는다. 다익스트라 최단 경로 알고리즘은 그리디 .. 2023. 2. 16.
반응형