반응형

hash 4

태태개발일지 - equals and hashcode 동시 재정의?

동등성 & 동일성자바에서 객체를 비교할 때는 equals() 메서드와 == 연산자를 사용한다.equals 메서드는 동등성 , == 연산자는 동일성을 의미한다. 쉽게 이야기하자면,equals : 객체의 값을 비교하는 것==:  객체의 실제 레퍼런스를 비교하여 동일한 객체인지 확인하는 것 ex)Test test = new Test("1");Test test2 = new Test("1"); equals 메서드를 재정의한 test1.equals(test2) // true test1 = test2 // false 이게 무슨 이야기인지 봐보자면,equals는 값을 비교했기 때문에 동등하다. 그래서 true가 나온것이고,== 는 객체의 레퍼런스를 비교했기 서로다른 객체이기 때문에   동일하지 않다.  라는 결과가 나..

JAVA 2024.12.05

hash-전화번호 목록

https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 우선 hash에 값을 모두 할당 해 준후, 첫번째 요소부터 접두사에 map.key가 포함되어있는 가 확인하면 되는 간단한 문제이다. import java.util.*; class Solution { public boolean solution(String[] phone_book) { boolean answer = true; Map map = new HashMap(); for(int i = 0; i ..

완주하지 못한 선수

https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 너무 복잡하게 생각했던 문제인 것 같다. 참가자중 완주하지 못하는 사람을 찾는 프로그램인데 나는 완주자를 먼저 hashmap에 할당하고 참가자중 완주자 명단에 없으면 그 사람을 리턴해 줬는데, 다른 사람 풀의를 참조하니 그냥 참가자를 먼저 넣고, 완주자를 명단에서 제거해줘서 남는 사람을 return 해주면 되는 경우였다. import java.util.*; import java.util.strea..

폰켓몬

https://school.programmers.co.kr/learn/courses/30/lessons/1845 전형적인 헤시 문제이고 중복을 허용하면 안되기 때문에 , hashset으로 인자를 계속 추가해주다가 총 넣은 인자값을 반환해 주면 되는 것이고, 총 인자가 총인자/2를 넘어서면 안되는 조건이 있기 때문에 그 전에 반환을 해주면 된다. import java.util.*; import java.util.stream.Collectors; import java.util.stream.DoubleStream; import java.util.stream.Stream; class Solution { public int solution(int[] nums) { int answer = 0; HashSet has..

반응형