
Problemhttps://school.programmers.co.kr/learn/courses/30/parts/12077 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 연구실에 있는 \( N \) 마리의 폰켓몬 중, \( \frac{N}{2} \) 마리를 가져가도 된다.폰켓몬은 종류에 따라 번호를 붙인다. 이중 가장 많은 종류의 폰켓몬을 가져갈 때, 그 종류의 개수를 return 해야 한다. Input / Output Examplenums는 폰켓몬의 종류 번호가 담긴 1차원 배열이다. nums: [3,1,2,3]output: 2Solution 해당 문제는 해시 카테고리로 분류되어 있다.즉 해시를 사용..
![[알고리즘] 시간 복잡도와 점근 표기법](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3dZBq%2FbtsLG4B8LdP%2FXKyWqjwEE4OFMTB1cjWZV0%2Fimg.webp)
Intro 알고리즘 문제를 풀다보면 자주 등장하는 것이 시간 복잡도이다.이 글에서는 알고리즘의 시간 복잡도의 정의와 이를 표현하는 방법인 점근 표기법에 대해 서술한다. 알고리즘의 성능을 어떻게 판단할까?크게 정확도와 효율성으로 판단할 수 있다.그 중 효율성은 시간 효율성과 공간 효율성으로 나뉜다. 시간 효율성을 나타낼 때는 시간 복잡도를 사용하고,공간 효율성을 나타낼 때는 공간 복잡도를 사용한다. 하지만 대개 공간복잡도의 상한은 시간복잡도이기 때문에 시간복잡도를 많이 사용한다. 시간 복잡도의 정의시간복잡도 = 알고리즘을 실행하는데 걸리는 시간을 표현하는 것 CS(컴퓨터과학/공학) 분야에서 시간복잡도란 프로그램의 입력값과 연산 수행 시간의 상관관계를 나타내는 척도이다. 알고리즘으로 한정해서 이야기를 한다면..