HASH3 [알고리즘] 해시 알고리즘 패턴 여러개의 해시 문제를 풀면서 이 알고리즘 문제 유형의 패턴을 분석해보기로했다. 1. 해시 알고리즘 문제인지 파악 문제에서 key와 value로 값으 저장해야한다면 해시 문제일 확률이 높다. 이럴 경우 HashMap 객체를 만들어서 그 안에 key와 value로 저장하고 활용하도록 한다. 2. 자주 사용하는 메소드 2.1 get, put, remove 메소드 map객체를 사용하는 기본 메소드이다. 각각 key값에 해당하는 값 조회, 입력, 삭제를 담당한다. map.get(key); map.put("값입력"); map.remove(key); 2. HashMap 객체 생성 아래 코드는 Key가 String이고, value가 Integer인 경우이다. HashMap map = new HashMap(); 2.3 .. 2020. 6. 14. [알고리즘] 프로그래머스 - 완주하지 못한 선수 오늘 풀어 본 문제는 프로그래머스의 완주하지 못한 선수 입니다. "해시(Hash)"를 이용해서 푸는 문제였습니다. 1. 문제 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 2. 나의 코드 import java.util.HashMap; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; .. 2020. 3. 26. [Oracle] 결합알고리즘과 성능 1. Nested Loops SQL에서 결합 연산을 수행할 때 내부적으로 선택되는 알고리즘을 바탕으로 결합에 대해서 알아보겠습니다. 결합 알고리즘의 가장 기본이되는 Nested Loops는 이름 그대로 중첩 반복을 사용하는 알고리즘입니다. SQL에서 결합은 한 번에 두 개 의 테이블만 결합하므로 본질적으로 이중 반복과 같은 의미입니다. ● 결합 대상 테이블에서 레코드를 하나씩 반복해가며 스캔합니다. 이 테이블을 구동테이블 또는 외부 테이블이라고 부릅니다. 다른 테이블은 내부 테이블이라고 합니다. ● 구동 테이블의 레코드 하나마다 내부 테이블의 레코드를 하나씩 스캔해서 결합 조건에 맞으면 리턴합니다. ● 이러한 작동을 구동 테이블의 모든 레코드에 반복합니다. ● 한 번의 단계에서 처리하는 레코드 수가 적으.. 2019. 6. 24. 이전 1 다음