[Algorithm] 2강 : 알고리즘 성능 평가란?

2강 : 알고리즘 성능 평가 #복잡도란? 복잡도 : 알고리즘 성능을 나타내는 척도 시간 복잡도 - 수행 시간 분석 공간 복잡도 - 메모리 사용량 분석 복잡도와 성능 반비례 # 빅오 표기법(Big-O Notation) 가장 빠르게 증가하는 항만을 고려하는 표기 N3(제곱) + 5N(제곱) + 10000 이 있을 때 가장 차수가 끈 N세제곱만 남겨 O(N3(제곱)) # 간단한 시간 복잡도 계산 array = [1,2,3,4,5] for x in arry: summary +=x = > 시간 복잡도 O(N) #2중 반복문 for i in arry : for j in array: temp = i * j print(temp) => 시간 복잡도 O(N제곱) #알고리즘 설계 Tip 코딩 테스트 문제에서 시간제한은 통상..

[Algorithm] 프로그래머스 스킬체크 레벨 1 문제(python)

1. 문제 어떤 n 값이 들어왔을 때 n 값이 어떤 정수 x의 제곱인 경우 x+1의 제곱 값을 반환하고, 그렇지 않은 경우 -1을 반환하는 문제이다. n 값 = 121 , 3 으로 테스트 def solution(n): a = str(n ** 0.5) if( a[(a.find("."))+1:] == '0' ): answer = ( float(a) +1)**2 else: answer = -1 return answer 나는 값을 가져온 후 이 값을 str으로 바꿔서 "." 을 찾고 이 "." 의 위치를 기준으로 뒤에 값이 0 인지 아닌지로 확인했다. 더 쉬운 방법도 있을 것 같다. 2.문제 array값을 [1, 5, 2, 6, 3, 7, 4] 을 받고 commands 값을 [[2, 5, 3], [4, 4, 1..