본문 바로가기

코딩테스트/문제풀이 팁15

시간 복잡도 계산 https://devraphy.tistory.com/284 시간복잡도 완전정복(1) 0. 시작에 앞서 요즘 백준을 통해 알고리즘 문제를 열심히 풀고있다. 문제를 작성하면 내 코드가 다른 사람들의 코드보다 10ms 정도 더 걸리는 경우도 있고, 올바른 답은 나오지만 시간초과로 인 devraphy.tistory.com 시간 복잡도를 코딩 테스트에 활용하는 방법 이제 시간 복잡도를 표현하는 방법이 빅오 표기법이라는 건 알았습니다. 그럼 빅오 표기법을 어떻게 활용하면 좋을까요? 코딩 테스트 문제에는 제한 시간이 있으므로 문제를 분석한 후에 빅오 표기법을 활용해서 해당 알고리즘을 적용했을 때 제한 시간 내에 출력값이 나올 수 있을지 확인해볼 수 있습니다. 그러면 문제 조건에 맞지 않는 알고리즘을 적용하느라 낭비하.. 2024. 2. 20.
int[] -> List<Integer> 반환? 메소드 리턴타입을 바꾸자 https://school.programmers.co.kr/learn/courses/30/lessons/42840 import java.util.*; class Solution { public int[] solution(int[] answers) { int[] user1 = {1,2,3,4,5}; int[] user2 = {2,1,2,3,2,4,2,5}; int[] user3 = {3,3,1,1,2,2,4,4,5,5}; //맞춘 개수를 담을 배열 int[] cnt = {0,0,0}; //가장 많이 맞춘 사람 넣는 리스트 List list = new ArrayList(); for(int i=0;i 2024. 2. 19.
중복을 저장하지 않는 배열-HashSet 배열을 만들 때 연산 결과, 중복된 정수가 나오는 경우 : 중복을 허용하지 않는 HashSet 사용 HashSet 이란? Set 인터페이스에서 지원하는 구현 클래스. HashSet의 특징 1. 순서대로 입력되지 않고, 일정하게 유지되지 않음 2. null 요소 허용 3. 중복 허용 X 중복을 걸러내는 과정 HashSet은 객체를 저장하기 전에 먼저 객체의 hashCode()메소드를 호출해서 해시 코드를 얻어낸 다음 저장되어 있는 객체들의 해시 코드와 비교한 뒤 같은 해시 코드가 있다면 다시 equals() 메소드로 두 객체를 비교해서 true가 나오면 동일한 객체로 판단하고 중복 저장을 하지 않습니다. 문자열을 HashSet에 저장할 경우, 같은 문자열을 갖는 String객체는 동일한 객체로 간주되고 다.. 2024. 2. 13.