본문 바로가기
반응형

프로그래밍 이야기/알고리즘2

알고리즘/ Permutation cycle Permutation cycle에 대한 설명은 위에 다있으니 생략 하도록 하고 프로그래밍 하는 방법만 설명 드리겠습니다. 먼저 숫자가 위와 같이 4 1 7 5 6 8 3 9 10 2 이라고 치면 이만큼 길이의 boolean 배열을 선언합니다.(c언어라면 그냥 int로 하면되겠죠) 그리고 permutation cycle의 갯수를 세주는 count변수를 하나 둡니다. Number 1 2 3 4 5 6 7 8 9 10 boolean false false false false false false false false false false 처음은 이렇게 모두 false로 둡니다. 그리고 1부터 따라갑니다. Number 1 2 3 4 5 6 7 8 9 10 boolean true false false false .. 2011. 4. 27.
[알고리즘 문제]/탐욕기법/Deadline이 주어진 작업의 scheduling 머리를 약간 써야 하는 문제입니다. 알고리즘 실기 시험 시간에 나온 문제인데 4시간안에 5문제를 풀어야하는데 이문제 생각이 잘 나지 않아서 못풀었네요. 푸는 방법은 탐욕기법을 이용하여 풉니다.(푸는방법 보지말고 풀어보세요 그게 도움이 될듯) 먼저, profit이 높은것으로 먼저 정렬을 합니다. 위의 예를 가지고 하면 job5 job2 job1 job4 job3 profit 16 12 10 7 4 deadline 2 13 4 2 1 이렇게 되겠죠 . 그럼 작업을 하나씩 넣습니다 정렬한 순서대로 day 1 2 3 4 5 6 7 8 9 10 11 12 13 jobnum job5 위처럼 job5가 먼저 들어가겠죠. deadline에 맞춰서 넣습니다. day 1 2 3 4 5 6 7 8 9 10 11 12 13 .. 2011. 4. 27.
반응형