A ship in harbor is safe, but that is not what ships are built for.

자료구조 3

내일배움캠프 AI, 16일차 TIL - 2022.09.21

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.09.21. 16일차 - TIL 1. 알고리즘, 자료구조 강의 3주차 과제 (1) - 문제 : 상품의 가격을 담은 배열과 쿠폰을 담은 배열이 주어질 때, 최대한 할인을 많이 받았을 때의 가격을 구하라(단, 쿠폰은 한 제품에 한 번씩만 적용 가능) - 풀이 : 가장 비싼 금액이 가장 많이 할인을 받게 한다. def get_max_discounted_price(prices, coupons): prices.sort(reverse=True) # 가격 배열을 내림차순 정렬 coupons.sort(reverse=True) # 쿠폰 배열을 내림차순 정렬 prices_index = 0 # 각각의 배열에 접근하기 위한 인덱스 지표 coupons_inde..

내일배움캠프 AI, 14일차 TIL - 2022.09.19

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.09.19. 14일차 - TIL 1. 알고리즘, 자료구조 강의 Array : 크기가 정해진 연속된 데이터 공간, 데이터 접근이 빠르며(O(1)) 데이터 추가 시 모든 공간이 다 찼다면 새로운 공간을 할당하고, 중간에 요소 삽입/삭제가 어렵다(O(n)) -> 모든 요소를 이동시켜야 한다 Linked List: 크기가 정해지지 않은 데이터 공간, 삽입과 삭제가 빈번한 문제에 사용하기 좋으며 모든 공간이 다 찼어도 맨 뒤의 노드만 동적으로 추가 가능하다. 특정 데이터 조회에 O(n)의 시간이 필요하다. 파이썬의 list는 내부적으로 동적 배열을 사용해 배열, 링크드 리스트 모두로 사용 가능 linked list 구현 # 노드 클래스 정의 cl..

내일배움캠프 AI, 13일차 TIL - 2022.09.16

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.09.16. 13일차 - TIL 1. 자료구조, 알고리즘 강의 최댓값 찾기 : [3, 5, 6, 1, 2, 4] 의 배열에서 가장 큰 수를 반환 # 1. 각 숫자마다 모든 다른 숫자와 비교해 최댓값 확인 def find_max_num(array): for num in array: # array의 길이(n)만큼의 연산 for cp_num in array: # array의 길이(n)만큼의 연산 if num < cp_num: # 비교 연산 1번 break # for num in array에서 break가 한번도 실행되지 않으면 num을 반환 else: return num # 시간 복잡도 : n * n = n^2 print("정답 = 6 / 현..