본문 바로가기

전체 글23

프로그래머스 LV.4 지형 이동 js 코딩테스트 연습 - 지형 이동 [[1, 4, 8, 10], [5, 5, 5, 5], [10, 10, 10, 10], [10, 10, 10, 20]] 3 15 [[10, 11, 10, 11], [2, 21, 20, 10], [1, 20, 21, 11], [2, 1, 2, 1]] 1 18 programmers.co.kr 그래프 문제가 풀고싶던 와중에 문제 제목만 봐도 그래프 문제 느낌이 나서 오늘은 "지형 이동" 문제를 풀어 보겠습니다. 문제 속에 핵심찾기. 문제를 보면 아무 칸에서 출발하여 모든 칸을 방문할 때 비용의 최솟값을 return하는 문제입니다. 따라서 모든 칸을 최소 비용의 간선으로 잇는 점을 보아 크루스칼 알고리즘을 떠올릴 수 있습니다. 문제의 예시에서 또 하나의 아이디어를 주고 있는것 같습니.. 2022. 3. 11.
백준 4386 별자리 만들기 js 4386번: 별자리 만들기 도현이는 우주의 신이다. 이제 도현이는 아무렇게나 널브러져 있는 n개의 별들을 이어서 별자리를 하나 만들 것이다. 별자리의 조건은 다음과 같다. 별자리를 이루는 선은 서로 다른 두 별을 일 www.acmicpc.net 풀이. 별자리들의 좌표가 주어졌을 때 최소 비용으로 모든 별자리를 잇는 최소 스패닝 트리 문제입니다. union-find개념과 더불어 크루스칼 알고리즘을 공부하면 쉽게 풀 수 있는 문제입니다. union-find의 개념은 여기서 쉽게 배울 수 있습니다. 크루스칼 알고리즘은 여기서 쉽게 배울 수 있습니다. 1. 모든 별자리를 입력받고 모든 경우의 별자리 사이의 거리를 queue 변수에 담아줍니다. 2. 비용을 기준하여 오름차순 정렬해줍니다. 3. 무한 루프가 생기지.. 2022. 3. 9.
redux-persist states migration하기. 소개. Bitfolio 앱 프로젝트를 진행할 때, server database가 아닌 local의 storage에 핵심 데이터를 저장하고 있습니다. 때문에 기존 사용자들의 데이터들이 잘 보존되면서 migration 해야 했기 때문에, 조금 신중하고, 헤매었던 기억이 있어 포스팅하여 경험을 남깁니다. redux-persist를 이용하여 persisted state를 관리하다 보면, state 기본값을 바꾸거나 { key: value }를 추가, 제거해야 하는 경우가 생길 수 있습니다. 이럴 때 migration 하는 방법을 포스팅하겠습니다. 전제 조건. 기본적인 redux-persist의 구성은 이전 포스터에서 설명한 구성을 바탕으로 설명합니다. redux의 배경지식이 필요합니다. migration하기 전.. 2022. 3. 9.
redux-persist storage로 AsyncStorage 사용하고 redux-toolkit까지 구성해보기 소개. React Native로 Bitfolio 앱을 만들면서 redux 상태 관리 라이브러리를 사용하게 되어 redux-persist까지 도입하게 된 배경과 적용법까지 포스팅해 보겠습니다. 도입하게 된 배경. redux의 store는 새로고침하거나, 앱을 재실행하면 state가 초기화됩니다. 하지만 상황에 따라 state의 초기화를 원치 않을 경우가 생길 수 있습니다. 예). 1. 다크 / 라이트 모드를 지원할 경우 사용자가 원하는 모드를 저장해야 할 경우. 2. 여러 개의 언어를 지원할 경우 사용자가 설정한 언어를 저장해야 할 경우. 3. 쇼핑몰 앱의 경우 비 로그인 주문 시 장바구니에 물건을 담을 경우. 주로 이와 같은 데이터는 React Native의 문서에 따르면 AsyncStorage에 Loc.. 2022. 3. 9.