코딩3 Lv2_[[1차] 캐시, C++] 풀이 및 알고리즘 정리 - 프로그래머스 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 내용, 조건, 예시는 프로그래머스 사이트 참조 문제에서 반드시 알아야 할 부분은 '캐시 교체 알고리즘 LRU(Least Recently Used)' LRU는 가장 최근에 사용되지 않은 데이터를 우선적으로 교체하는 방식으로 캐시 메모리에 있는 데이터 중에서 가장 오랫동안 사용되지 않은 데이터를 제거하여 새로운 데이터를 캐시에 적재하는데 사용합니다. 크기가 3인 cache에 (JEJU, Pangyo, Seoul) 순차 삽입 가득 차 있는 cache에 cache miss되는 문자열 삽입 가장 오래된 JEJU는.. 2023. 5. 23. Lv1_[로또의 최고 순위와 최저 순위, C++] 풀이 및 알고리즘 정리 - 프로그래머스 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 내용, 조건, 예시는 프로그래머스 사이트 참조 여기서 알아야할 풀이 방식은 다음과 같다 lottos와 win_nums를 비교해서 일치하는 숫자 찾기 lottos에 존재하는 0의 갯수 찾기 (일치하는 개수 == 최저 순위), (최저 순의 + 0의 개수 = 최고 순위) 두 벡터간의 일치하는 수를 찾는 방법은 여러가지가 중에 set 자료구조를 사용해서 비교 각 벡터에 저장된 값은 중복된 수가 들어있지 않기 때문에 데이터 손실도 없기에 검색이 빠른 set 구조를 사용 win_nums를 set으로 변환 후 lot.. 2022. 12. 23. Lv1_[옹알이(2), C++] 알고리즘 정리 - 프로그래머스 (map, 재귀함수 사용) 문제 내용, 조건, 예시는 프로그래머스 사이트 참조 입력으로 문자열 배열(babbling)과 조카의 발음을 비교하기 쉽게 구분을 했습니다. 조카의 발음을 알파벳으로 구분해서 map에 저장해두는 방식을 사용 이유는 네 가지 발음만 사용할 수 있기 때문에 다른 발음이 들어오면 발음을 할 수 없기 때문이죠. ex) "yezma"가 입력일 때, z가 들어오면 발음할 수 없는 알파벳이므로 해당 문자열은 발음하지 못하는 것으로 결론내릴 수 있음. - map _m; - map (※map 대신 unordered_map을 사용해도됨. 조건과 상황에 따라 변경 가능) 와 같은 형태로 저장된다. 이렇게 구성을 하는 이유는 검색 속도를 높이기 위함이다. 지금 예시에는 발음이 4개 뿐이 없어서 단순 반복문(for)으로 검색해도.. 2022. 11. 3. 이전 1 다음 728x90 반응형