알고리즘을 고안 해 볼 것이다.
또한, 다익스트라알고리즘을 모바일 기기로 돌릴 경우 계산이 복잡하여 시간상의 문제가 생기는 것이다. 따라서 본 연구에서는 바이- 다익스트라알고리즘을 이용하여 경로탐색 속도를 높일 수 있는 방법을 찾아볼 것이다.
마지막으로, 서울대 내의 최단경로 탐색에
알고리즘의 예
유클리드 호제법 (Euclidean algorithm)
int gcd(int u, int v)
{
while (u > 0) {
if (u < v) SWAP(u, v);
u = u - v;
}
return v;
}
다음의 프로그램은 알고리즘인가?
[3N + 1 문제]
read N
while (N != 1) {
if (N is even)
N = N / 2;
else
N = 3*N + 1;
}
알고리
1. 알고리즘이란?
주어진 문제를 해결하는, 잘 정의된 유한한 단계의 과정
2. 컴퓨터용어로서 알고리즘?
어떤 문제의 해결을 위해 컴퓨터가 사용 가능한 정확한 방법을 말한다.
3. 수학적 알고리즘이란?
안정성과 수렴성, 복잡성이 수학적으로 검증된 알고리즘을 말한다.
4. EXAMPLE
성질을 갖는 경로를 찾는 것이다.
(3) 최단 경로 기법 :
➀ 그리디(Greedy) 알고리즘인 다익스트라(Dijkstra) 알고리즘
➁ 동적계획법(Dynamic Programming)인 플로이드(Floyd) 알고리즘
(4) 최단경로가 사용되는 예 :
➀ GPS를 이용한 네비게이션 시스템
➁ 지하철 노선도 최단경로 검색 시스템
➂ 수송 시스템
Font font1 = new Font("Serif", Font.PLAIN, 13);
jb1 = new JButton("탐색하기");
jtf_start = new JTextField("1");
jtf_end = new JTextField("1");
JPanel jp2 = new JPanel();
jp2.add(jspace[3] = new JLabel("시작점_('x'는 그 경로로 직접가는 값이 없음을 의미)"));
jspace[3].setFont(font1);
jp2.add(jtf_start);
jp2.add(jspace[3] = new JLabel("도착점"));
jspace[3].setF