전체 글

HashSet의 특징HashSet은 중복을 빠르게 체크할 수 있는 자료구조이다.기존의 List에서 중복여부를 체크하려면 List의 모든 요소를 순회하며 해당 값이 있는지 체크(O(n))해야 했지만HashSet은 그러한 과정을 O(1)로 해결한다. 하지만 HashSet의 타입이 Integer나 String이 아닌 사용자가 정의한 객체라면 어떻게 될까?이때는 중복을 속성의 값으로 체크하는 것이 아닌 객체의 참조값으로 체크를 한다.속성의 값으로 중복을 체크하고 싶다면 어떻게 해야할까? 객체의 속성으로 중복 체크해당 클래스에서 equals()메서드와 hashCode()메서드를 오버라이드 해주면 된다.public class Person { private String name; private int ag..
1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2. 풀이 과정이 문제는 모든 칸을 방문하기 위해서 필요한 사다리 설치 비용의 최솟값을 구하는 문제이다.  이 문제에서 주의해야할 점은 현재 위치에서 인접한 위치로 당장 방문할 수 없다고 해서 그 위치를 방문할 수 없는 것이 아니다.예를 들어 위의 케이스에서 최대 높이 차가 3이라고 할 때,  (0, 2)에서 (1, 3)으로는 바로 갈 수가 없다.그렇다고 해서 (1, 3)을 방문하지 못한다고 판단해 바로 사다리를 설치하면 안된다.(0, 1) -> (1, 1) -> (1, 2) -> (0, 2)로 이동한..
1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2. 풀이 과정튜플을 표현한 집합이 주어졌을 때, 그 집합을 가지고 원래의 튜플을 유추하는 문제이다. 튜플은 순서가 다르면 다른 튜플이며튜플을 표현한 집합 내의 원소는 순서가 상관이 없다. 예를 들어 (2, 1, 4, 3)이라는 튜플이 있다면 이는{{2}, {2, 1}, {2, 1, 4}, {2, 1, 4, 3}}으로 표현할 수 있는데이 집합의 원소간의 순서도 상관없고 (예: {{2, 1, 3, 4}, {2}, {2, 1, 3}, {2, 1}})원소 내의 순서도 상관이 없다.(예: {{1, 2, 3},..
1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2. 풀이 과정주어진 0또는 양의 정수들을 가지고 조합해서 만들 수 있는 가장 큰 수를 찾으면 되는 문제이다. 가장 큰 수를 만들기 위해선 큰 '숫자'가 앞으로 가야한다.여기서 '숫자'는 그 수 자체가 아니라 0~9까지의 숫자를 말한다. 예를 들어 3, 10이 있으면 수자체는 10이 크지만 3이 앞으로 가야 더 큰 수를 만들 수 있다.(310 vs 103)  그렇기 때문에 각 수를 문자열로 변환 후 사전역순으로 정렬하면 될 것 같다.하지만 한가지 더 주의해야할점이 있다.3과 30같은 경우이다. 이 경우..
jaehee1113
나의 개발 발자취