반응형 파이썬 알고리즘 2 파이썬 알고리즘_#02_버블정렬 오늘은 가장 기초적인 알고리즘인 버블 정렬을 배워 보도록 하겠습니다. 버블 정렬은 첫 번째 값과 두 번째 값을 비교해서 두 번째 값이 더 작으면 첫 번째 값과 자리를 바꾸는 알고리즘입니다. 아래의 예제를 보며 코드를 해석하겠습니다. numbers = [3, 7, 8, 2, 5] def order(arr): for f_index in range(0, len(arr)): for s_index in range(f_index+1, len(arr)-1): if arr[f_index] > a[s_index]: temp = a[f_index] arr[f_index] = arr[s_index] arr[s_index] = temp return arr print(order(numbers)) 먼저 numbers라는 리스트를.. 2020. 6. 8. 파이썬 알고리즘_#01_약수의 개수 구하기 문제 어떤 자연수 n이 주어졋을때 그 자연수의 약수의 개수를 구하여라. 입력 설명 자연수 n을 입력받아라. 출력 설명 자연수 n의 약수의 개수를 출력하라. 입력 예제 20 출력 예제 6 답 n = int(input()) count = 0 for i in range(1, n+1): if n%i == 0: count += 1 print(count) 해석 먼저 자연수 n을 받을 변수 'n'을 선언한 뒤 계산을 해주기 위해 int() 형식으로 바꾸어 줍니다. 그리고 약수의 개수를 셀 변수 count를 선언하고, for문을 1부터 n까지 반복합니다. 그런데 왜 n뒤에 +1을 붙일까요? B시리즈 강좌에서도 설명했듯이 'range'함수는 값에서 -1을 해주기 때문에 20 - 1 = 19이기 때문에 +1을 해주었습니다.. 2020. 4. 16. 이전 1 다음