[자료구조] 하노이의 탑 [C언어]

등록일 2003.05.17 한글 (hwp) | 2페이지 | 가격 1,000원

목차

◇ 하노이 탑의 문제를 푸는 방법
◇ 프로그램_하노이의 탑
◇ 실행결과

본문내용

[하노이의 탑] 3개의 탑이 있는데 첫 번째 탑에는 반경이 서로 다른 64개의 원반들이 쌓여있다. 각 원반은 반경이 큰 순서로 아래부터 쌓여있다. 이제 수도승들이 다음규칙에 의해 첫 번째 탑에서 세 번째 탑으로 원판을 옮기려 한다.
a) 한 번에 한 개의 원반만을 다른 탑으로 옮길 수 있다.
b) 쌓아 높은 원반은 항상 위의 것이 아래의 것보다 작아야 한다.
이 작업을 수행하는데 필요한 이동 순서를 출력하는 순환/반복 함수를 만들어라.

◇ 하노이 탑의 문제를 푸는 방법
1. 기둥 1에서 N-1개의 원반을 기둥 2로 옮긴다.
2. 기둥 1에서 1개의 원반을 기둥 3으로 옮긴다.
3. 기둥 2에서 N-1개의 원반을 기둥 3으로 옮긴다.

그러면 N-1개의 원반을 옮기는 방법은 기둥 1에서 N-1개의 원반을 기둥 2로 옮기는 방법을 새로운 문제로 생각하고 기둥 1에서 N-2개의 원반을 기둥 3으로 옮겼다가, 기둥 1에서 1개의 원반을 기둥 2로 옮기고 기둥 3에서 N-2개의 원반을 기둥 2로 옮기면 될 것이다.
이런 식으로 N-1개의 원반을 움직이는 문제에서 N-2개의 원반을 움직이는 문제로 문제의 크기를 줄여가다 보면 1개의 원반을 움직이는 기본적인 문제에 도달하게 될 것이다.
*원하는 자료를 검색 해 보세요.
  • 하노이의 탑 1페이지
    하노이의 탑 1. 기둥이 4개, 원판이 n개일 경우 최소 이동 횟수 - 일단 각 기둥이 1,2,3,4로 번호가 매겨져 있다고 가정함. - 기둥1에 n개의 원반이 꽂혀있고, 이 원반은 기둥4로 옮기려고 함. - n개의 원판 중 k개를 기둥2로 옮김. (k개를 옮길 때 사..
  • 하노이 탑 0페이지
    #include #define Max 3 void hanoi(int, char, char, char); int main() { hanoi(Max, 'a', 'b', 'c'); return 0; } void hanoi(int n, char a, char ..
  • c언어 하노이 탑 소스 ★ 0페이지
    옮기고자 하는 원반의 수를 지정할 수 있습니다.int 로 선언하엿으니 약 1 ~~ +21474836 개의 원반을 옮기는 작업이 가능합니다.
  • [C언어,자료구조]하노이탑 실행순서 및 이동 횟수 (120층까지) 7페이지
    ..FILE:hanoi.JPG ..FILE:hanoi.cpp #include #define MAX_LAYER 120 int Input_hanoi(); // 원반 수를 입력 받기 위한 함수 선언부 void Show_hanoi(int n); // 11이상..
  • 하노이탑 C 프로그램 레포트 + 소스 4페이지
    하노이탑 C 프로그램 레포트 + 소스(1) 하노이탑이란?(2) 하노이탑의 분할정복과정(3) 하노이탑 C 프로그래밍(4) 실행결과(5) 하노이탑 분석
  • [C언어]하노이의 탑 0페이지
    데이터 구조 Project #1. -Tower Of Hanoi 1. 문제의 인식 하노이의 탑은 3개의 서로다른 기둥과 서로다른 크기의 N개의 원반으로 구성된다. 이 원반들은 세 개의 기둥 중에 하나에 꽂혀있으며, 원반의 위에 놓인 원반은 아래의 원반보다 클 수 없다. ..
  • C로짠 하노이탑 0페이지
    C로짠 하노이탑
더보기
      최근 구매한 회원 학교정보 보기
      1. 최근 2주간 다운받은 회원수와 학교정보이며
         구매한 본인의 구매정보도 함께 표시됩니다.
      2. 매시 정각마다 업데이트 됩니다. (02:00 ~ 21:00)
      3. 구매자의 학교정보가 없는 경우 기타로 표시됩니다.
      4. 지식포인트 보유 시 지식포인트가 차감되며
         미보유 시 아이디당 1일 3회만 제공됩니다.
      상세하단 배너
      최근 본 자료더보기
      상세우측 배너
      [자료구조] 하노이의 탑 [C언어]