![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/zQpCt/btrRROAz831/TQB9IqR89BZMorYIHR6VB1/img.png)
Linked List 란? 데이터를 링크로 연결해서 관리하는 자료구조이다. 자료의 순서는 정해져 있지만, 배열과 다르게 메로리상 연속성이 보장되지는 않는다. Linked List 장점 vs 단점 장점 단점 - 데이터 공간을 미리 할당할 필요가 없다. - 리스트의 길이가 가변적이라 데이터 추가 / 삭제가 용이하다. - 연결구조를 위한 별도 데이터 공간이 필요하다. - 연결 정보를 찾는 시간이 필요하여 접근 속도가 상대적으로 느리다. - 데이터 추가, 삭제 시 앞뒤 데이터의 연결을 재구성하는 작업이 필요하다. Linked List 구조 Node -> 데이터 저장 단위로, 값과 포인터(연결 정보)로 구성되어 있다. 데이터 추가 방법 단방향 연결리스트 더보기 public void addData(int data,..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cC2MlP/btrReaX9Hat/h1zEE7B6ccXwz3fRx5jefK/img.png)
외젠 샤를 카탈랑이 1838년에 제안한 수열로 카탈랑 수는 조합에서 자주 나오는 수열이며 아래의 점화식으로 나타낼 수 있다 n 번째 카탈랑 수는 아래의 점화식으로 나타낼 수 있다. 예를 들어 9번째 카탈랑수를 구한다면 아래의 표 처럼 구할 수 있다. -출처 나무위키- import java.util.ArrayList; public class CatalanNumbers { public static int solution(int n) { int result; ArrayList list = new ArrayList(); list.add(1); for (int i = 0; i
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/HYA5t/btrQZhYHJWF/Tw5dx9p2s6MESKgi97NkDK/img.png)
행복한 수란, 각 자리수를 제곱한 것을 더하는 과정을 반복했을 때 1로 끝나는 수 이다. 행복한 수가 아니라면 1에 도달하지 못하고 같은 수열이 반복하게 된다. 행복한 수 찾는 방법 주어진 수가 19일때 1^2 + 9^2 = 82 8^2 + 2^2 = 68 6^2 + 8^2 = 100 1^2 + 0^2 + 0^2 = 1 주어진 숫자를 일의자리와 십의 자리를 각각 제곱한 값을 ArrayList 에 넣어주었다. ArrayList 를 사용하면 계산된 결과가 contain 을 통해서 이전 계산에 같은 결과가 나왔는지 알 수 있기 때문에 사용하였다. 주어진 수의 자릿수는 계산할때 마다 달라지기 떄문에 Interger.toString(n).length() 를 통해서 숫자의 자릿수를 알 수 있었다. 주어진 수를 나머..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ZHdbs/btrQZ4qSkr2/HyzSX96vMIAdIxz69pvYP0/img.png)
파스칼의 삼각형은 수학에서 이항계수를 삼각형 모양의 기하학적 형태로 배열한 것이다. 삼각형의 행의 수가 입력으로 주어졌을 때 파스칼의 삼각형을 출력하라. 삼각형을 그리는 규칙은 다음과 같다. 숫자가 들어갈 칸을 첫 번째 줄에는 1개, 두 번째 줄에는 2개, 세 번째 줄에는 3개 이런 식으로 한 줄씩 내려가면 한 칸씩 늘어나게 정삼각형 모양으로 만든다. 첫 번째 줄과 두 번째 줄의 3칸에는 1을 쓴다. 세 번째 줄부터는 줄의 양쪽 끝 칸에는 1을 쓰고 나머지 칸에는 바로 윗줄에 위치한 칸 중 해당 칸과 인접해 있는 두 칸의 숫자를 더해서 그 값을 쓴다. 이 규칙에 따라 삼각형을 그려보면 위 그림처럼 된다. - 출처 나무위키 - 파스칼 삼각형을 ArrayList 로 구현하였다. 삼각형의 한 행을 ArrayL..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/rr2hJ/btrQZcDclyY/mci1rkQwqinyExfCVALfV1/img.png)
두 수가 주어지며, 두수의 최대 공약수와 최소 공배수를 구하라 약수란? 약수란 어떤 수를 나누어떨어지게 하는 수를 말한다. 약수에는 항상 1과 자기 자신을 포함한다. 12의 약수를 구하면 1, 2, 3, 4, 6, 12 가 된다. 최대 공약수란? 0 이 아닌 두 개 이상의 정수의 공통되는 약수 중에서 가장 큰 수 이다. 따라서 두 정수 a, b 의 최대 공약수는 a 의 약수인 동시에 b의 약수인 수, 즉 두 정수 a, b 의 공약수 중에서 가장 큰 수를 의미한다. 최소 공배수란? 0이 아닌 두 개 이상의 정수의 양의 공배수 중에서 가장 작은 수이다. 따라서 두 정수 a, b의 최소 공배수는 a 의 배수인 동시에 b 의 배수인 수, 즉 두 정수 a, b 의 공배수 중에서 양수인 것 중 가장 작은 수를 의미..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bHpUiT/btrQI19AIgJ/VI4vQvIfNY5jbecOgH792k/img.png)
1. 합의 법칙 합의 법칙은 A에서 발생되는 case 와 B에서 발생되는 case 를 더하는 법칙이다. 이때 중요한건 A와 B에서 겹치는 case 는 빼 주어야한다. 집합으로 따지면 합집합과 같다. n(A U B)= n(A) + n(B) - n(A ∩ B) 예제 - 두 개의 주사를 던졌을 때 합이 3 또는 4의 배수일 경우의 수 3의 배수의 경우의 수 : 12 3 : (1, 2) (2, 1) 6 : (1, 5) (2, 4) (3, 3) (4, 2) (5, 1) 9 : (3, 6) (4, 5) (5, 4) (6, 3) 12 : (6, 6) 4의 배수의 경우의 수 : 9 4 : (1, 3) (2, 2) (3, 1) 8 : (2, 6) (3, 5) (4, 4) (5, 3) (6, 2) 12 : (6, 6) 위..
- Total
- Today
- Yesterday
- 제로베이스 백엔드 스쿨
- 취업 준비
- 개발자 면접 준비
- 백엔드 개발자 기술 면접 준비
- 프로그래머스
- 백준
- 취준
- 프로그래머스 카카오
- 코테 준비
- 주니어 개발자 취업 준비
- 프로그래머스 자바
- 코딩테스트공부
- 기술 면접 준비
- 개발자 취업 준비
- java
- 코테준비
- 코딩테스트
- 알고리즘
- 코딩테스트 준비
- 자바공부
- 알고리즘공부
- 개발자 취준
- 코테공부
- 알고리즘 공부
- 취업준비
- 백엔드 개발자 취업 준비
- 제로베이스 백준 장학금
- 코딩테스트 공부
- 백엔드 개발자
- 자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |