문제 : 어떤 주식에 대해 특정 기간 동안의 가격 변화가 주어졌을 때, 그 주식 한 주를 한 번 사고팔아 얻을 수 있는 최대 수익을 계산하는 알고리즘을 만들어 보세요. 주가 테이블 문제 분석과 모델링 주식 거래로 수익을 내는 가장 좋은 방법은 ‘가장 쌀 때 사서 가장 비쌀 때 파는 것’ 얼핏 생각하면… Continue Reading (모두의 알고리즘) 최대 수익 알고리즘

문제 : 겉보기에는 똑같은 동전이 n개 있습니다. 이 중에서 한 개는 싸고 가벼운 재료로 만들어진 ‘가짜 동전’입니다. 좌우 무게를 비교할 수 있는 양팔 저울을 이용해서 다른 동전보다 가벼운 가짜 동전을 찾아내는 알고리즘을 만들어 보세요. 문제 분석과 모델링 동전 n개 중에는 무게가 적게 나가는 가짜 동전이 한 개 섞여 있음 무게를 숫자로… Continue Reading (모두의 알고리즘) 가짜 동전 찾기 알고리즘

미로 찾기 : 출발점에서 도착점까지 가기 위한 최단 경로를 찾는 알고리즘 문제 분석과 모델링 이 문제를 컴퓨터에게 풀어 보라고 하려면 어떻게 해야 할까? 사람에게는 쉽지만 컴퓨터에게 이 문제를 이해하고 풀게 하긴 어려움 이때 필요한 것이 바로 ‘모델링(모형화)’ 모델링이란 주어진 현실의 문제를 정형화하거나 단순화하여 수학이나 컴퓨터 프로그램으로 쉽게 설명할 수 있도록 다시… Continue Reading (모두의 알고리즘) 미로 찾기 알고리즘

그래프 꼭짓점(동그라미로 표현) 여러 개와 각 꼭짓점 사이의 연결 관계를 선으로 표현한 것을 그래프라고 함 1부터 6까지 이름이 붙여진 꼭짓점(vertex)이 여섯 개 있고, 그 꼭짓점 사이를 연결하는 선(edge)이 일곱 개 있음 다음 관계를 그래프로 그리면 Summer와 John은 서로 친구입니다. Summer와 Justin은 서로 친구입니다. Summer와 Mike는 서로 친구입니다. Justin과 May는 서로… Continue Reading (모두의 알고리즘) 친구의 친구 찾기

딕셔너리 정의 : 정보를 찾는 기준이 되는 키(key)와 그 키에 연결된 값 (value)의 대응 관계를 저장하는 자료 구조 예1 : 여러 사람이 있을 때 각 사람의 이름(키)과 나이(값)를 대응시켜 딕셔너리로 쉽게 표현할 수 있음

예2 : 학생의 학번과 이름으로 대응된 학생명부

응용 1: 학생 번호 2번에 해당하는 학생… Continue Reading (모두의 알고리즘) 동명이인 찾기

회문(回文; palindrome) 순서대로 읽어도 거꾸로 읽어도 그 내용이 같은 낱말이나 문장 큐 설명 큐(queue)는 ‘줄 서기’에 비유할 수 있음 택시를 타기 위해서 줄을 서는 과정을 떠올려 보자 새로 택시 정류장에 도착한 사람은 맨 뒤로 가서 줄을 서고, 택시가 도착하면 그 줄의 맨 앞에 선 사람이 줄을 빠져나가 택시를 탐 가장… Continue Reading (모두의 알고리즘) 회문 찾기(큐와 스택)

이진 탐색(Binary Search)이란 이진 탐색(binary search)은 정렬된 데이터 집합을 이분화하면서 탐색하는 방법 참조 URL 네이버 지식백과1 네이버 지식백과2 이진 탐색 알고리즘

연습문제. 재귀호출을 이용한 이진 탐색

..

퀵 정렬(Quick Sort)이란 퀵 정렬(quick sort)은 기준키를 기준으로 작거나 같은 값을 지닌 데이터는 앞으로, 큰 값을 지닌 데이터는 뒤로 가도록 하여 작은 값을 갖는 데이터와 큰 값을 갖는 데이터로 분리해가며 정렬하는 방법 참조 URL 네이버 지식백과1 네이버 지식백과2 쉽게 설명한 퀵 정렬

퀵 정렬 알고리즘

퀵 정렬(과거 알고리즘)

Continue Reading 11. (모두의 알고리즘)퀵 정렬(Quick Sort)

병합 정렬(Merge Sort)이란 주어진 데이터들을 몇 부분으로 분할한 다음 각각을 재귀적으로 정렬하고, 두 부분을 합쳐서 하나로 만드는 방법 복잡도는 O(n log n)으로 비교적 좋은 편이나 내부 정렬로는 별로 사용하지 않고 주로 외부 정렬을 위해 사용 쉽게 설명한 병합 정렬

병합 정렬 알고리즘

연습문제1. 큰수에서 작은수 순서로 나열하는 병합 정렬 알고리즘

..

삽입 정렬(Insertion Sort)이란 삽입 정렬(insertion sort)은 아직 정렬되지 않은 임의의 데이터를 이미 정렬된 부분의 적절한 위치에 삽입해 가며 정렬하는 방식 참조 URL 네이버 지식백과1 네이버 지식백과2 쉽게 설명한 삽입 정렬

삽입 정렬 알고리즘

연습문제2. 큰수에서 작은수 순서로 나열하는 삽입 정렬 알고리즘

..

error: Content is protected !!