목록자료구조 (11)
Finn의 개발블로그
1. Array - 가장 기본적인 자료구조- 찾고자 하는 데이터의 인덱스의 값을 알고 있으면 Big-O(1) 시간으로 접근 가능- 배열의 크기가 지정되어서 만약 길이를 늘혀야 한다면 많은 메모리 소모- 데이터의 삽입 삭제시 연속성을 유지하기 위해서 데이터의 이동 발생으로 Big-O(N) 시간 소모 2. 배열을 이용한 리스트의 구현(Abstract Data Type) 2-1. 리스트 자료구조의 ADT- init(self):- 리스트를 초기화 한다.- append(self, data):- 리스트에 데이터를 저장한다. 매개변수 data에 전달된 값을 저장한다.- remove(self, index):- 지정한 인덱스의 데이터를 삭제한다.- search(self, search_data)- 현재 리스트에서 특정한 ..
1.재귀- 재귀함수의 기본적인 이해- 재귀 함수를 실행하는 중간에 다시 재귀 함수가 호출되면, 재귀 함수의 복사본을 하나 더 만들어서 복사본을 실행하게 됩니다. 2.Factorial- n! = n x (n-1) x (n-2) x (n-3) x ... x 2 x 1def factorial(num): if num search_list[mid]: return r_binary_search(search_list, mid + 1, last, target) else: return r_binary_search(search_list, first, mid - 1, target) e_list = [1, 2, 3, 4, 5, 6, 7, 8, 23, 24] print(r_binary_search(e_list, 0, len(e_..
1. 자료구조란 무엇인가? 데이터를 표현하고 저장하는 방법 자료구조의 분류선형구조리스트스택큐비선형구조트리그래프파일구조순차파일색인파일직접파일단순구조정수실수문자문자열2. 알고리즘의 성능분석 방법알고리즘을 평가하는 두 가지 요소 시간복잡도알고리즘의 수행시간 분석결과공간복잡도메모리 사용량에 대한 분석결과순차 탐색 알고리즘과 시간 복잡도 분석의 핵심요소def linear_search(search_list, target): for i in search_list: if i == target: return i return result = linear_search([1, 2, 3, 4, 5, 6], 8) print(result) --------------------------------- None 좋은 탐색 알고리즘은 ..