일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 알고리즘
- 순열
- 규칙찾기
- 튜플
- 2017 카카오 코드
- 문자열
- fragment identifier
- 후위 표기법
- 에라토스테네스의 체
- Dynamic Programming
- python
- 메뉴리뉴얼
- 영문자 확인
- Java
- dfs
- 쿼드압축 후 개수세기
- 프로그래머스
- 반복문
- Stack
- 완전 탐색
- HashSet
- 동적계획법
- 보이어무어
- 최소공배수
- pandas
- 점프와 순간이동
- 조합
- 어려웠던 문제
- HashMap
- 완전탐색
- Today
- Total
목록전체 글 (148)
csmoon1010의 SW 블로그

0. 문제유형 : 반복문, 배열 탐색 1. 문제이해 programmers.co.kr/learn/courses/30/lessons/17679 코딩테스트 연습 - [1차] 프렌즈4블록 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 프렌즈4블록. 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙 programmers.co.kr (1) 주요 요구사항 : 같은 모양의 블록이 2x2 형태로 붙어 있으면 지워지면서 점수를 얻는 게임 - 같은 블록은 여러 2x2에 포함 가능 - 가능한 경우의 블록을 모두 지운 후 위에 있는 블록은 아래로 떨어짐 ▶ 더 이상 지울 수 없을 때까지 반복. 과정 중 지워지는 블록 개수 합 return. (2)..
1. 특성 - 선형구조(자료 간의 관계가 1대 1의 관계를 가짐) - LIFO(Last In First Out) 구조 (후입선출) 2. 구현 in Java : java.util에 있는 Stack 클래스를 사용한다. ex> 정수 스택 : Stack stack = new Stack(); - empty() : 스택이 비어있는가 - peek() : 스택의 제일 상단에 있는 요소 반환 - pop() : 스택의 제일 상단에 있는 요소 반환 + 제거 - push(E item) : 제일 상단에 요소를 삽입 - search(Obejct o) : 제일 상단의 요소를 1로 하여 객체가 존재하는 위치의 인덱스 반환 3. Stack의 연산 배열, ArrayList 등의 자료구조와 가장 상단의 인덱스를 나타내는 top을 이용해 ..
0. 문제 유형 : 적절한 자료구조 활용, 예외 처리 1. 문제 이해 programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr (1) 주요 요구사항 : 주어진 두 string(str1, str2)의 (자카드 유사도*65536)의 정수부 구하기 자카드 유사도 J(A, B) = (A와 B의 교집합 크기) / (A와 B의 합집합 크기) - 다중집합 확장 : 중복되는 원소 각자 처리 ex> A= {1,1,2,2,3},..

두 String의 패턴을 비교할 때 사용하는 알고리즘들을 정리해보자!! 1. Brute Force 알고리즘 : 처음부터 끝까지 차례대로 순회하면서 일일이 비교 - 문자가 일치한다면 : 두 String의 index를 한 칸씩 ++ - 문자가 일치하지 않는다면 : 비교 대상의 index를 다시 처음으로 public int BruteForce(String[] p, String[] t){ //p : 패턴, t : 전체 텍스트 int i = 0; int j = 0; while(i < t.length && j < p.length()){ if(t[i] != p[j]){ i = i - j; j = -1; } i++; j++; } if(j == p.length()) return i-p.length(); //패턴 찾음 -..
※ SWEA의 String 강의를 듣고 정리한 내용 swexpertacademy.com/main/learn/course/lectureVideoPlayer.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 분류 (1) 고정 길이(Fixed length) : 문자열의 길이가 고정된 경우 (2) 가변 길이(Variable length) : 문자열의 길이가 고정되지 않음 - 길이 조절(Length controlled) - Java의 String - 구분자(Delimited) - C언어의 String 2. Java String 클래스의 메모리 배치(Java.lang.String) : 기본적인 객체 메타 데이터 ..
0. 문제 유형 : 규칙찾기, 적절한 자료구조(중복 처리) 1. 문제 이해 programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 [tank, kick, know, wheel, land, dream, mother, robot, tank] [3,3] 5 [hello, observe, effect, take, either, recognize, encourage, ensure, establish, hang, gather, refer, reference, estimate, executive] [0,0] programmers.co.kr (1) 주요 요구사항 규칙에 맞게 끝말잇기를 진행하여 [탈락하는 사람의 번호, 자신의 몇 번째] 를 출력 [규..
0. 문제 유형 : 규칙찾기 1. 문제 이해 programmers.co.kr/learn/courses/30/lessons/12985 코딩테스트 연습 - 예상 대진표 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N programmers.co.kr (1) 주요 요구사항 - 게임의 진행방식 : 1~N번까지 토너먼트로 진행, 한 라운드를 진출하면 다시 1~N/2로 번호 재배정 - 주어진 A번과 B번 참가자가 몇 번째 라운드에서 만나는지 return (서로 붙게 되기 전까지는 항상 이긴다고 가정) (2) 제한사항 - N : 2^1 ~ 2^20의 자연수 → ..

1. Search(검색, 탐색)이란? - 저장되어 있는 자료 중에서 원하는 항목을 찾는 작업 - 원하는 항목 : 목적하는 "탐색키(Search Key)"를 가진 항목 2. Search 1 > Sequential Search(순차 검색) : 일렬로 된 자료를 순서대로 검색 - Array, Linked List와 같은 순차 자료구조 활용 (1) 정렬되지 않은 자료 [과정] ① 첫 번째 원소부터 순서대로 검색대상과 키 값을 비교 ② 키 값과 동일한 원소 찾음 → 해당 원소의 인덱스 반환 ③ 마지막까지 찾지 못함 → '검색 실패' 반환 [비교횟수 및 시간복잡도] - 평균 비교횟수 = (1+2+3+ ... + (n-1) + n) / n = (n+1) / 2 - 시간 복잡도 = O(n) public static b..