[문제] [해답] - 맞추긴 했는데... 약간 더럽게 코드를 짜서 맞췄다. 아래가 내가 작성한 코드이다. - 다른 사람들의 풀이도 다 비슷비슷했다. import java.util.*; class Solution { public String[] solution(String my_str, int n) { String[] answer = null; if(my_str.length() == n) { answer = new String[1]; answer[0] = my_str; } else { List list = new ArrayList(); String temp = my_str; while(true) { list.add(temp.substring(0, n)); temp = temp.substring(n); if..
- 큐(Queue)도 Stack과 같이 단순한 규칙을 가지고 있는 리스트이다. - 규칙 : FIFO(First In First Out) - 즉, 먼저 들어간 데이터가 가장 먼저 나온다는 의미로서 먼저 들어간게 가장 나중에 나오는 Stack과는 반대의 개념이다. - Queue는 운영체제에서도 사용된다. - 운영체제가 프로세스의 작업 요청을 들어온 순서대로 Queue에 넣고 이를 CPU가 순서대로 꺼내서 처리한다. - 이를 운영체제에서는 FIFO 스케줄링이라고 한다. - 일상생활에서 마트 계산대, 놀이공원 줄 등도 모두 Queue의 개념으로 볼 수 있다. ● 연결리스트로 Queue 구현하기 - 연결리스트의 맨 첫 번째 node를 head 라고 했을 때 숫자 1, 2, 3, 4 를 순서대로 연결리스트에 삽입하..
[문제] [해답] - 못 풀었다. 정말 문자열 문제는 너무나 괴롭다. - 다른 사람의 풀이를 참고해 아래 문제를 풀었다. class Solution { public int solution(String A, String B) { int answer = 0; String temp = A; if(!A.equals(B)) { for(int i = 0; i < A.length(); i++) { temp = String.valueOf(temp.charAt(A.length() - 1)) + temp.substring(0, A.length() - 1); if(temp.equals(B)) { answer = i + 1; break; } else { answer = -1; } } } return answer; } } - ..
● Stack이란? - Stack은 단순한 규칙을 가지고 있는 리스트이다. 여기서 규칙은 FILO(First In Last Out)이다. - FILO(First In Last Out) : 먼저 들어간 데이터가 나중에 나오는 규칙 ex) 10명의 사람이 모두 1층에서 엘베를 탄 후 5층에서 내린다고 했을 때 가장 먼저 탄 사람이 가장 나중에 내린다. - Stack은 먼저 들어온 게 나중에 나오는 조건만 충족한다면 어떠한 자료구조로 구현하든 상관없다. - 배열과 연결리스트를 이용해서도 각각 Stack을 구현할 수 있다. ● 연결리스트를 이용해 Stack 구현 - 연결리스트의 맨 첫 번째 node를 head 라고 했을 때 이 haed를 가지고 모든 node를 연결할 수 있다.(아래 사진 참고) - 바로 이 h..
[문제] - 문제 설명이 이상하니 주의 ※ 가로 2, 세로 5인 종이는 가로 1번, 세로 8번이 아니라 가로 4번, 세로 5번 OR 세로 1번 가로 8번이다. ※ 종이를 90도로 돌리지 않는 이상 가로 1번, 세로 8번은 나올 수가 없는 조합이다. (지문에서 90도로 돌린다는 얘기는 없었다.) [정답] - 풀긴 풀었는데 문제 설명이 애초에 잘 못 돼서 초반에 방향을 잘 못 잡았다. - 순간 내가 알고 있는 가로, 세로의 개념이 바뀌었나 했다. 1. 내 풀이 class Solution { public int solution(int M, int N) { // M 가로 N 세로 int answer = 0; if(M == 1 && N > 1) { answer = N - 1; } else if(N == 1 && ..
[문제] [풀이] - 이건 내가 직접 풀었다. 내 풀이는 아래와 같다. class Solution { public int solution(int[] common) { int answer = 0; int one = common[0]; int two = common[1]; int thr = common[2]; if((two - one) == (thr - two)) { answer = common[common.length - 1] + (two - one); } else { answer = common[common.length - 1] * (two / one); } return answer; } } - 쉬운 문제라 다른 사람의 풀이도 다 비슷비슷했다. - 아래의 풀이는 변수 선언을 적게하는 풀이다.(난 3개 선..
- Total
- Today
- Yesterday
- git
- DART
- Phaser3
- OS
- db
- 메모리
- 프로세스
- Spring Boot
- jpa
- API
- 코딩테스트
- SpringBoot
- node.js
- 프로그래머스
- MongoDB
- Stream
- 빅데이터 분석기사
- 알고리즘
- spring
- MySQL
- java
- Advanced Stream
- 코테
- Phaser
- nosql
- 자료구조
- Java8
- 운영체제
- SQL
- 빅데이터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |