본문 바로가기

C++47

C++ 1005. Maximize Sum Of Array After K Negations(Leet Code) Leet Code_1005. Maximize Sum Of Array After K Negations Greedy https://leetcode.com/problems/maximize-sum-of-array-after-k-negations/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 vector의 원소들을 주어진 횟수만큼 음수, 양수를 바꾸어 최대 합계 구하기 ​ 방법 1. vector의 원소들을 주어진 횟수만큼 음수, 양수를 바꾸어 최대 합계 구하기 결과 vector의 원소들을 주어진 횟수만큼 음수, 양수를 바꾸어 최대 합계 구하기 통과한 코드 class Solution { public: int largestSumAfterKNegations(vector& vec, int K.. 2020. 6. 23.
C++ 860. Lemonade Change(Leet Code) Leet Code_860. Lemonade Change Greedy https://leetcode.com/problems/lemonade-change/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 고객들에게 거스름돈을 주면서 판매가 가능한지 확인하기 ​ 방법 1. 고객들에게 거스름돈을 주면서 판매가 가능한지 확인하기 결과 고객들에게 거스름돈을 주면서 판매가 가능한지 확인하기 통과한 코드 class Solution { public: unordered_map maps; bool pay(int n) { int pay = n; if (n == 5) { maps[5]++; return true; } while (n > 20 && maps.find(20) != maps.end() && .. 2020. 6. 23.
C++ 136. Single Number(Leet Code) Leet Code_136. Single Number https://leetcode.com/problems/single-number/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 vector 원소 중 중복되지 않는 숫자 구하기 ​ 방법 1. vector 원소 중 중복되지 않는 숫자 구하기 2. hash table을 사용하기 결과 vector 원소 중 중복되지 않는 숫자 구하기 통과한 코드 class Solution { public: int singleNumber(vector& nums) { unordered_map map; for(int i = 0 ; i < nums.size() ; i++) { map[nums[i]]++; } for (unordered_map::iterator.. 2020. 6. 22.
C++ 자료구조 - unordered map(hash map) unordered map(hash map) map과 비슷하지만 정렬이 되어있지 않다. insert, erase, find 모두가 O(1)O(1) 으로 수행된다 셋이나 맵의 경우 O(log n)O(logn) 이었지만, unordered_set 과 unordered_map 의 경우 상수 시간에 원소를 삽입하고, 검색할 수 있다. 원소의 key 값(데이터형)을 hash function을 통해 생성한다.(대부분 정수값) 다른 원소이지만 같은 해시값을 가질 수 있다(해시 충돌(hash collision)) 1. 사용 - #include - unordered_map [변수이름] 2. 생성자와 연산자(int로) - unordered_map um; - 비어있는 unordered_map um을 생성 3. 멤버 함수 - .. 2020. 6. 22.