반응형 전체 글131 [영화 웹 서비스]The Basics of React react js vs vanilla js - reactjs는 UI를 interactive 하게 만든다(=웹사이트에 interactivity를 만들어준다) - 화면에 버튼 하나와 텍스트 하나 - 버튼을 클릭할 때마다 화면의 텍스트를 업데이트(클릭 수를 센다) - reactjs는 UI에서 바뀐 부분만 업데이트 해준다, 이전에 렌더링된 컴포넌트는 어떤 거였는지 확인, 그리고 다음에 렌더링될 컴포넌트는 어떤거지를 보고, "다른 부분"만 파악한다. 여러가지 요소를 리렌더링하려고 해도 전부 다 새로 생성죄지는 않는다 (콘솔 창에서 확인해 볼 수 있음, vanillajs에서는 모든 부분이 업데이트) 1. 바닐라JS앱 - document.getElementById나 querySelector를 이용해서 그 버튼을 찾는다.. 2022. 3. 16. [해시] 위장 1. 문제 요약 - 서로 다른 옷의 조합 구하기 2. 풀이 - 옷의 종류가 string으로 저장되어 있으니 map에 를 저장한다. - map의 iterator를 통해 저장되어 있는 옷의 개수를 구해올 수 있다. 3. 코드 //틀린 코드 #include #include #include using namespace std; int solution(vector clothes) { int answer = 0; map m; for(int i=0; i 1) { for (auto iter = m.begin(); iter != m.end(); iter++) { temp *= iter->second; } answer += temp; return answer; } else { return answer; } } 더보기 무조.. 2022. 3. 14. Hash (해시) Hash 임의의 크기를 가진 데이터(key)를 고정된 데이터의 크기(value)로 변환시키는 것 시간복잡도: O(1) // 해시 값 자체를 index로 사용, 검색과 저장이 빠른 자료구조 Direct Addressing key-value 쌍의 데이터를 배열에 저장할 때, key값을 직접적으로 배열의 인덱스로 사용하는 방법 key값의 최대 크기만큼의 공간을 사용. 크기는 매우 큰데 저장하고자 하는 데이터가 작다면 공간 낭비의 위험 ex) key값이 3인 데이터가 있다면, 이를 index가 3인 위치에 저장하고 데이터 연결 / 삭제는 NULL 값 넣기 Hash Table key값을 테이블에 저장할 때 "함수"를 이용해서 계산을 수행한 후, 그 결과값을 index로 사용하여 저장 해시 함수(Hash Funct.. 2022. 3. 14. Binary Search (이진 탐색) Binary Search 데이터가 정렬되어 있는 경우에서, 탐색 범위를 두 부분으로 나누어 가면서 원하는 원소를 찾는 방법 시간복잡도: O(log N) // 모두 탐색을 하는 경우에는 O(N) 이진 탐색의 과정 1. 탐색 범위를 설정 (start, end지점) 2. 탐색 지점(mid) 설정 후 찾는 값(key)와 비교한다. mid = (start+end) /2 3. mid == key 일 때의 해당 값을 찾는다. mid > key 이면, [start, mid-1] 로 탐색 범위 수정 mid end가 될 때까지, 2~3 과정을 반복 이진 탐색 코드 1. 반복문을 사용한 방법 int BinarySearch(int arr[], i.. 2022. 3. 13. [해시] 완주하지 못한 선수 1. 문제요약 - 마라톤 선수들의 이름이 담긴 participant, 완주한 completion - 완주하지 못한 선수의 이름 return 2. 풀이 - participant에는 있지만 completion에는 없는 이름이 완주하지 못한 선수 - 두 vector를 이름순으로 정렬하고, 0번째 index부터 이름을 검사한다. participant과 completion에 이름이 다른 순간이 participant에만 이름이 있는 것이므로, 그 이름을 return 한다. 3. 코드 #include #include #include using namespace std; string solution(vector participant, vector completion) { string answer = ""; sort(p.. 2022. 3. 13. 이전 1 ··· 19 20 21 22 다음 반응형