본문 바로가기
728x90

알고리즘2

시간복잡도 - 개념 시간복잡도를 계산하는 방법알고리즘의 기본 단계 분석: 알고리즘이 수행하는 기본 작업(예: 비교, 덧셈, 루프 등)의 수를 세어야 함입력 크기에 대한 함수 작성: 입력 크기에 따라 기본 작업의 수가 어떻게 변하는지 나타내는 수식을 만듭니다. 입력 크기는 보통 n으로 표기됨주요 작업의 기여도 평가: 여러 단계가 있는 알고리즘에서는 각 단계의 기여도를 평가합니다. 가장 큰 기여도를 가진 단계가 전체 시간복잡도를 결정함최대값을 추출하고 단순화: 시간이 가장 많이 소요되는 부분을 기준으로 시간복잡도를 단순화하여 표기합니다. 이때 O(n), O(n^2), O(log n) 등의 표기법을 사용함시간복잡도는 O(n)왜냐하면 n개의 요소를 반복def example1(arr): for i in range(len(arr.. 2024. 9. 13.
알고리즘 (Algorithm) 알고리즘의 기초사항 알고리즘이란? 문제가 있고 그 문제를 해결하기 위한 효율적인 알고리즘 찾고 그걸 반복적으로 수행하는 것을 말한다. 정말 알고리즘이 필요할 때는? 코딩은 다했고, 배포도 끝냈을 때.그러나 너무 심각하게 느릴 때 어디 코드를 최적화해서 빠르게 해야 할지 모를 때. 바로 이때 알고리즘을 활용한다. 문제를 해결하기 위해서 알고리즘을 활용해 접근해 본다면?(여기서 '피츄'를 찾는 방법은 이분탐색을 활용함) 전화번호부에서 '피츄'를 찾는다. 1. 전화번호부를 집어든다. 2. 전화번호부의 중간을 핀다. * 3. 그 페이지를 살펴본다. 4. '피츄'가 그 페이지에 있다면 5. '피츄'에게 전화를 건다. **6. 만약에 '피츄'가 더 앞쪽 페이지에 있다면 7. 책 앞쪽의 중간을 펴서 살펴본다. 8. .. 2023. 9. 5.
728x90