목록내일배움캠프 4기/자료구조, 알고리즘 KDT 실무형 (3)
A Developing Developer
정렬 정렬 : 데이터를 순서대로 나열하는 방법 버블 정렬: 첫번째 자료와 두번째 자료, 세번째 자료와 네번째 자료,... 이런 식으로 (마지막 - 1) 번째 자료와 마지막 자료를 비교하여 자료를 정렬하는 방식 input = [4, 6, 2, 9, 1] # 1번째 : [4, 6, 2, 9, 1] # → → → → 비교! # 2번째 : [4, 2, 6, 1, 9] # → → → 비교! # 3번째 : [2, 4, 1, 6, 9] # → → 비교! # 4번째 : [2, 1, 4, 6, 9] # → 비교! def bubble_sort(array): n = len(array) for i in range(n - 1): for j in range(n - i - 1): if array[j] > array[j + 1]: ..
배열(Array) : 크기가 정해진 데이터의 공간 - 한 번 정해지면 바꿀 수 없음 - 각 원소에 즉지 접근 가능 - 원소를 중간에 삽입/삭제 하려면 모든 원소를 다 옮겨야 함 (최악의 경우 O(N)의 시간 복잡도가짐) - 원소를 새로 추가하려면, 새로운 공간을 할당해야 하므로 매우 비효율적인 자료구조임. 클래스 : 분류, 집합 같은 속성과 기능을 가진 객체를 총칭하는 개념이다. - 객체 : 세상에 존재하는 유일무이한 사물 클래스를 사용하면 같은 속성, 기능을 가진 객체들을 묶어서 정의 가능! class Person: def __init__(self, param_name): print("i am created! ", self) self.name = param_name def talk(self): prin..
최댓값 찾기 문제 1 input = [3, 5, 6, 1, 2, 4] def find_max_num(array): # 배열 인덱스 만큼 반복 for num in array: for compare_num in array: # 비교숫자보다 작으면 break if num < compare_num: break else: return num print("정답 = 6 / 현재 풀이 값 = ", find_max_num([3, 5, 6, 1, 2, 4])) print("정답 = 6 / 현재 풀이 값 = ", find_max_num([6, 6, 6])) print("정답 = 1888 / 현재 풀이 값 = ", find_max_num([6, 9, 2, 7, 1888])) 최댓값 찾기 문제 2 def find_max_num..