목록전체 글 (94)
밍쎄의 코딩공간
Trie와 관련된 문제를 찾던 중에 카카오 블라인드 문제를 접하게되었다. 이번 내 부캠에서 본 코테에 대하여 멤버들과 이야기를 해봤는데 String startwith등 내장 메서드를 이용하셨다고 하셨다. 공부를 하면할 수록 점점 더 처음으로 돌아가는 것 같다...!! 흐흐 궁굼해서 다른 분의 코테를 참고하였다! https://wellbell.tistory.com/166 프로그래머스 - 자동완성 문제 (자바) programmers.co.kr/learn/courses/30/lessons/17685 코딩테스트 연습 - [3차] 자동완성 자동완성 포털 다음에서 검색어 자동완성 기능을 넣고 싶은 라이언은 한 번 입력된 문자열을 학습해서 다음 입력 때 활용 wellbell.tistory.com 첫 번째 방법은 문자..

이번 코테는 처음부터 끝까지 Trie 였다. 보자마자 Trie 라는 것을 파악하는 건 성공, but 매끄럽게 코드를 구현하기는 힘들었다. -------- Trie 란? Trie는 일반적인 Tree자료구조와 같은 모양이지만 저장하는 값이 다른 형태입니다. 위와 같은 정수형 자료의 이진트리에서는 검색을 수행할 때 O(logN)의 시간 복잡도를 가지게 된다. 그러나 같은 이진트리 형태 이어도 문자열을 저장하고 있다면 문자열의 길이가 M일 때, O(M*logN)의 시간 복잡도를 가지게 된다. 이러한 문제를 해결하기 위해 Trie를 사용하는 것이다. Trie는 루트 노드는 비어있고 첫 번째 자식 노드부터 문자열의 첫 단어가 저장된다. 현재 위 그림의 Trie에 저장된 문자는 cap, code, kakao, kai..
import java.util.*; class Solution { public String[] solution(String[] names) { ArrayList list = new ArrayList(); for(int i = 0; i < names.length; i += 5){ list.add(names[i]); } String[] answer = new String[list.size()]; for(int i = 0; i < list.size(); i++) answer[i] = list.get(i); return answer; } } https://school.programmers.co.kr/learn/courses/30/lessons/181886 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지..
2주차 나의 회고록에 들어가야 하는 키워드는 "통과" 이다. 어느 새, 우리의 사회에는 P/F(통과/실패)로 모든 것을 결정하는 시대가 온 것 같다. 나 역시 P에 항상 갈망하고 있다. 하지만 나의 서랍장엔 F가 한가득 하다. 요즘 나는 코테를 하면서 왜 통과를 하지 못하는 가? 만점을 받지 못하는 가를 계속 따져왔다. 그 속에 나는 항상 불만족스러움을 표출해왔다. 근데 당연하지 않는가? 저 질문들은 처음부터 근본이 없는 질문인 것이다. 만점, 통과에 연연하면서 남에게 가독성을 심어줄 수 없는 더티코드를 만드는 것이 요즘 내가 하고 있는 것이다. (그냥 도돌이표~~~) 더티코드는 물론 가~끔씩 만점이란 숫자를 만나게 해 주지만, 다음에 그 코드를 봤을 때 나도 이해를 못하는 경우가 종종 있었다 ㅎㅎ,,,..
class Solution { public int[] solution(int[] arr, int[][] queries) { for(int[] x : queries){ int tmp = arr[x[0]]; arr[x[0]] = arr[x[1]]; arr[x[1]] = tmp; } return arr; } } https://school.programmers.co.kr/learn/courses/30/lessons/181924 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr
class Solution { public int[] solution(int start, int end) { int[] answer = new int[start-end+1]; int pos = 0; for(int i = start; i >= end; i--) answer[pos++] = i; return answer; } } https://school.programmers.co.kr/learn/courses/30/lessons/181899 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr