책 내용 질문하기
이번 2회 예상기출문제 알고리즘
도서
[2012] 정보처리산업기사 실기
페이지
0
조회수
186
작성일
2012-07-05
작성자
첨부파일

답만보고 잘 이해가 안가서 설명좀 해주세요

답변
2012-07-05 09:49:49

안녕하세요.

우선 배열에 입력된 값에서 0을 찾습니다. 1 5 4 6 5 0이 입력되어 있다면 6번째에서 0을 찾았으므로 S는 6이됩니다.

괄호 2번에서 T = S - 1을 하는 것은 실제 데이터의 개수를 파악하기 위함입니다. 0을 제외한 나머지 데이터는 5이므로

T는 5가 저장됩니다.

S=1에 의해 S를 1로 초기화합니다.

이로 인해 S는 자료의 맨 앞(1)을, T는 자료의 맨 뒤(5) 위치를 가지게 됩니다.

이후는 자료의 중간 위치를 찾아서 서로 위치를 교환하는 과정입니다.

MID는 S와 T의 합을 2로 나눈 것으로 3이 산출되면 이로 인해 3이 중간 값임을 알 수 있습니다.

중간 값을 찾았으면 앞의 자료의 뒤의 자료를 서로 교환합니다.

교환될 때마다 앞 위치를 갖는 S는 1을 증가시키고, 뒤 위치를 갖는 T는 1을 감소시킵니다.

이런 과정을 반복하다 S가 중간값(MID)가 같아지면 교환이 끝난것이므로 값을 출력하고 종료합니다.

오늘도 즐거운 하루 되세요.

"
  • *
    2012-07-05 09:49:49

    안녕하세요.

    우선 배열에 입력된 값에서 0을 찾습니다. 1 5 4 6 5 0이 입력되어 있다면 6번째에서 0을 찾았으므로 S는 6이됩니다.

    괄호 2번에서 T = S - 1을 하는 것은 실제 데이터의 개수를 파악하기 위함입니다. 0을 제외한 나머지 데이터는 5이므로

    T는 5가 저장됩니다.

    S=1에 의해 S를 1로 초기화합니다.

    이로 인해 S는 자료의 맨 앞(1)을, T는 자료의 맨 뒤(5) 위치를 가지게 됩니다.

    이후는 자료의 중간 위치를 찾아서 서로 위치를 교환하는 과정입니다.

    MID는 S와 T의 합을 2로 나눈 것으로 3이 산출되면 이로 인해 3이 중간 값임을 알 수 있습니다.

    중간 값을 찾았으면 앞의 자료의 뒤의 자료를 서로 교환합니다.

    교환될 때마다 앞 위치를 갖는 S는 1을 증가시키고, 뒤 위치를 갖는 T는 1을 감소시킵니다.

    이런 과정을 반복하다 S가 중간값(MID)가 같아지면 교환이 끝난것이므로 값을 출력하고 종료합니다.

    오늘도 즐거운 하루 되세요.

    "
· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.