일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 802.3
- 802.3 이더넷
- Address Resolution Protocol
- adodb 설치
- AES 암호
- Alternatively build in profile or release modes to enable launching from the home screen
- Android Studio 몰입모드
- Android Studio 몰입모드 설정
- Android Studio 상태바 없애기
- Android Studio 자동 정렬
- android studio 자동정렬
- Android Studio 자동정렬 단축키
- Android Studio 코드 자동정렬
- Android Studio 타이틀바 없애기
- Android Studio 하단 바 없애기
- Android Studio 홈버튼 없애기
- Angler EK
- Angler EK 악성코드
- Angler EK이란
- apache2 tomcat9
- apache2 tomcat9 설치
- apache2 tomcat9 연동
- API
- apk 에러
- apk 오류
- ARP
- arp cache poisoning
- ARP Poisoning
- ARP Request
- ARP 구조
Archives
- Today
- Total
지나가는 이야기
[Python] 버블 정렬(Bubble Sort) 사용하기 본문
728x90
반응형
이번에는 파이썬으로 버블 정렬에 대해 알아보겠습니다.
먼저 버블 정렬은 정렬의 가장 기본이다. 버블 정렬은 위 사진에서 보듯이 현재 인덱스의 값보다 다음 인덱스의 값이 작을 경우 서로 값을 변경하는 정렬 알고리즘이다.
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j
위 코드 부분이 값을 변경하는 부분이다. 여기서 파이썬만 가능한 것이 있다. 여차 다른 언어 같은 경우에는 2개의 변수에 있는 값을 서로 바꾸기 위해서는 총 3개의 변수가 필요하지만 파이썬에서는 2개의 변수만으로 값을 서로 바꿀 수 있다.
728x90
# 버블 정렬의 범용성을 높이기 위해 함수로 만듬
def bubbleSort(arr):
n = len(arr) # 배열의 크기를 측정
# 배열의 크기만큼 반복
for i in range(n):
# 배열의 총 크기에서 i의 값과 1을 뺀 만큼 반복
for j in range(0, n - i - 1):
# 만약 현재 인덱스의 값이 다음 인덱스의 값보다 클경우 실행
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j] # 서로 위치를 변환
# 예시 배열
arr = [64, 34, 25, 12, 57, 93, 1, 123]
bubbleSort(arr)
print("[Sorted array is]")
for i in range(len(arr)):
print("%d " %arr[i], end = "")
위 코드는 전체 코드이다.
마지막으로 위 사진은 결과 사진으로 오름차순으로 정렬된 것을 확인할 수 있다.
728x90
반응형
'Computer language : 컴퓨터 언어 > Python' 카테고리의 다른 글
[Python] 원형 차트 만들기 / matplotlib 활용 (0) | 2021.02.12 |
---|---|
[Python] 선택 정렬(Selection Sort) 사용하기 (0) | 2021.01.27 |
[Python] 2. B 별 찍기 "별 찍기" (0) | 2021.01.21 |
[Python] 1. A 별 찍기 "별 찍기" (0) | 2020.12.30 |
[Python] 숫자 찾기 게임 / 숫자 맞추기 게임 (0) | 2020.12.05 |
Comments