버블정렬 bubble 2023. 5. 16. 18:57

namin0_0·2023년 5월 29일
0

bubble 정렬

알고리즘 완전 초초초초 기초...

5번 숫자를 입력 받아서

숫자가 작은순으로 출력시키자!

(오름차순 정렬법)

입력받는 값 :

5

4

2

1

3

출력되는 값 :

1 2 3 4 5

가 되도록 만들기!

먼저 배열 0번과 1번을 비교해서 0번이 크면 뒤로 보내기.

똑같이 1번과 2번 비교, 2번과 3번 비교, 3번과 4번 비교

그럼 가장 큰 수가 뒤로감!

비교 수는 배열의 길이보다 -1이라는 규칙이 있다.

위에거 반복되는 규칙 찾아서 for문으로 한번에 돌려버리자!


출력값 똑같은거 확인!

이렇게 가장 큰 수를 뒤로 보내면 또 앞에 배열 4개를

같은 방법으로 큰수를 뒤로 보내줘야 한다.

마지막 배열 4번째 수는 가장 큰 수가 이미 들어와 있으니까

나머지 배열 0~3번째 수 비교해서 큰수를 뒤로 보내기!

그럼 또 마지막 두자리가 가장큰수 들어오고

또 배열 0~2번째.. 0~1번째.. 비교 하면

작은수부터 순서대로 들어가게 된다..

위에서 쓴 숫자 비교하는 for 문을 계속 반복시켜야 하니까...

이중 for문으로 묶어서 쓰면 된다!

but 비교하는 횟수는 한개씩 작아져야함!

이렇게 간단하게 작성 완료....

안쪽 for문에서 한개씩 작아지게 조건을 설정해도 되고

바깥쪽 for문에서 한개씩 작아지게 만들어서 조건을 설정해도 된다..!

이번엔 내림차순을 써볼까^^..~~



위에 오름차순 정렬코드에서

값을 바꾸는 코드에서

비교했을 때 작으면 바꾸게 코드를 변경해주면

간단하게 오름차순 코드에서 내림차순으로 변경이 가능하다!

profile
갓생살기프로젝트

0개의 댓글