• 검색 결과가 없습니다.

버블 정렬

N/A
N/A
Protected

Academic year: 2022

Share "버블 정렬"

Copied!
5
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

100

18 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 정렬 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 2: 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 버블 정렬 (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort) (Bubble Sort)

버블 정렬

1.

(2)

www.gisa79.com

문 제

명의 학생 성적을 입력받아 배열에 저장한 후 저장된 자료를 오름차순으로 정렬하는 순서도 5

를 작성하시오

알고리즘에 사용되는 변수는 다음과 같다.

정렬할 숫자가 저장될 배열 - A(5):

- i: 인덱스 변수 인덱스 변수 - J:

자료 교환에 필요한 임시 변수 - TEMP:

분 석

서로 이웃한 값들을 차례대로 비교하여 기준값(J)이 비교값(J+1)보다 크면 값을 교환

뒤에서부터 정렬됨

(3)

102

※ 오름차순 정렬 조건 : A(J) > A(J+1) 내림차순 정렬 조건 : A(J) < A(J+1)

디 버 깅

명의 점수 를 입력받아 디버깅해서 정확성을 검증합니다

3 (80, 90, 70) .

이 때 배열은 A(3)로 반복문은, i = 1, 2 와 J = 1, 3-i 로 수정해서 디버깅합니다.

디버깅 결과와 여러분이 직접 구한 결과(70, 80, 90, 100)가 같으면 됩니다. 80 90 70

A(1) A(2) A(3)

i J A(J) > A(J+1) TEMP A(i) A(J+1) 출 력

(4)

www.gisa79.com

연습문제 버블 정렬

2. [ ]

‘06 1회 기사 기출문제

문 제

제시된 그림 은 배열< > A(10)에 기억된10개의 데이터에 대하여 버블 정렬(bubble sort)을 이용하여 오름차순으로 정렬하는 순서도이다. <그림 의 괄호 안 내용에 가장>

적합한 항목을 답항 보기 에서 선택하여 답안지의< >

해당 번호(1)~(5)에 마크하시오.

처리조건

< >

사용되는 변수 등은 다음과 같다

- .

N :정렬하고자 하는 수치 데이터의 갯수 정렬의 회전수를 계산하기 위한 변수 i :

배열의 첨자 등을 위한 변수 j :

FLAG : 임의의 회전 작업시 데이터의 교환이 발생하지 않을 경우 비교가 반복되는 것을 방지하기 위한 변수

두 변수간의 값을 서로 바꾸기 위한 변수 TM :

버블 정렬 개념 설명 -

개의 데이터에 대하여 인접한 개 데이터를 비교하여

n 2

결과에 따라 데이터를 교환한다 즉 오름차순의 경우. , 첫 번째 데이터와 두 번째 데이터를 비교하여 작은 데이터를 앞에 놓는다 이러한 작업은 첫째. ( : 둘째),

둘째

( : 세째), (세째: 네째) ...의 순으로 계속해서 번째와 번째 데이터를 비교하는 것으로 (n-1) n

회전이 끝나게 된다 이때 가장 큰 데이터가 번째

1 . n

위치하게 된다 다음에 다시 첫 번째 데이터로부터. , 번째 데이터까지 위와 같은 작업을 반복하면 (n-1)

두 번째 큰 값이(n-1)번째에 위치하게 되며, 회전 작업이 끝난다

2 .

이러한 과정을 반복하여(n-1)회전 즉 첫 번째와, 두 번째 데이터를 비교하는 것으로 작업이 끝난다.

단 회전 작업 시 교환되는 것이 없으면서 비교가, 반복되는 것을 방지하기 위해 플래그(FLAG)를 두어 후속 데이터들이 순서대로 있는지 여부를 검사하면서 정렬한다.

본 문제에서는 를 설정하여 임의의 회전 작업 시

- FLAG

교환이 발생하지 않는다면 정렬이 완료된 상태로 간주하고 작업을 종료시키기로 한다, .

(5)

104

1 1 2 -2 3 2 4 N 5 N-1

6 i 7 i+1 8 J 9 J+1 10 N+1

11 J+N 12 J+i 13 10-J 14 A(J) 15 A(i)

16 A(N) 17 N-J 18 FLAG-1 19 FLAG+1 20 A(J+1) 21 A(i+1) 22 N-i 23 A(N+1) 24 TM+1 25 N+2

26 N-2 27 FLAG 28 FLAG+2 29 i+2 30 J+2

31 J+10 32 TM-1 33 10-i 34 9 35 10

36 A(N-1) 37 A(J+N) 38 A(J-1) 39 J+9 40 0(zero)

디 버 깅

참조

관련 문서

첫 번째 단계는 같은 도메인을 사용하는 Domain Participant를 찾는 SPDP(Simple Participant Discovery Protocol) 과정이고, 두 번째 단계는 첫 번째 단계에서 찾았 던 Domain

(2) 첫 번째 Learn은 문장의 주어가 되어야 하므로 동명사나 to부정사 형태로 써야 한다?. 두 번째 learn은

첫 번째 worker 함수 호출 10번 결과를 출력. 두 번째 worker 함수 호출

• 다른 곳에서 일어나 두 번째 돌연변이로 인해 첫 번째 돌연변이 효과가 억제되는 경우. • tRNA에서의

또한 본 연구에서는 아디포넥틴 수준의 첫 번째 사분위를 기준으로 두 번째 세 번 째 네 번째 사분위에서 대사증후군에 대한 비차비를 가지 모델을 제시하여 비교하였

결론 및 논의 본 연구의 목적은 첫 번째 , 남성노인의 은퇴와 우울과의 관계 속에서 사회접촉의 매개 효과를 검증하는 것이며 , 두 번째 사회접촉을

첫 번째 스텝은 DB 아카이브 로그를 WORM 스 토리지 적용하는 것과 같이 DBMS의 고유기능을 이 용한다. 메모리상의 Online Redo Log Buffer에서 특정 사이즈에 도달하면 Online

서천석 박사의 첫 번째 기고문에 이어 두 번째 기고문을 보도하고자 합니다.. 수능 정시 강화는