728x90
반응형
SMALL

2025/03 3

[HASH] 베스트앨범

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 문제 접근법해당 문제는 해시와 정렬을 함께 활용해야겠다는 방향으로 접근했다.먼저, 장르별 총 재생 수를 저장한 Map을 만든 후, 이를 재생 수 기준 내림차순으로 정렬하여,정렬된 장르 순서만을 담은 배열을 도출했다. 이 배열은 곧 곡을 수록할 장르의 우선순위가 된다.그 다음, 각 장르에 해당하는 곡들을 [고유번호(index), 재생 수] 형태로 Map에 저장하고,재생 수 기준으로 내림차순 정렬하여 장르 내 우선순위를 정리했다.마지막으로, 각 장르별로 가장 많이 재생된 곡의 고유번호를 결과 배열에 추가하고,해당 장르에 곡이 2개 이상인 경우 두 번째 곡..

[HASH] 의상

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 해시(Hash)란?해시는 키(Key) - 값(Value) 쌍을 저장하는 자료구조로, 보통 해시 테이블(Hash Table) 또는 **해시 맵(Hash Map)**을 사용한다.해시로 출제되는 문제는 주로 아래와 같은 유형을 가지고 있는데 "의상" 문제는 빈도수 카운팅을 활용한 문제이다. 중복 검사빈도수 카운팅 ✅두 배열 간 공통 요소 찾기부분 배열의 합 문제 2. 문제 접근법해당 문제는 결국 의상의 "조합"을 도출하는 문제이며, 조합의 경우의 수를 구하기 위해 해시를 활용해야 하는 문제라고 생각했다.나는 의상의 개별적인 이름에는 관심을 두지 않고, 각 ..

시간복잡도와 공간복잡도

시간 복잡도와 공간 복잡도가 등장한 이유시간 복잡도와 공간 복잡도는 어떤 알고리즘이 더 효율적인지 분석하기 위해 탄생한 개념입니다.컴퓨터는 연산 속도와 메모리에 한계가 있기 때문에 같은 문제를 풀더라도 더 빠르고 메모리를 적게 사용하는 방법을 찾는 것이 중요합니다.초기 컴퓨터는 연산 성능이 낮고 저장 공간이 부족했기 때문에 프로그래머들은 어떤 알고리즘이 실행 속도가 빠른지, 얼마나 많은 메모리를 사용하는지 분석하는 방법을 연구해 왔습니다.이 과정에서 시간 복잡도와 공간 복잡도를 정의하고, 알고리즘을 빅오 표기법(Big-O Notation)으로 표현합니다. 1. 시간 복잡도(Time Complexity)프로그램이 올바르게 실행되는 것도 중요하지만, 빠르게 실행되는 것이 더욱 중요합니다.알고리즘을 잘못 선택..

CS🖥🧪 2025.03.07
728x90
반응형
LIST