Linked List 란? 데이터를 링크로 연결해서 관리하는 자료구조이다. 자료의 순서는 정해져 있지만, 배열과 다르게 메로리상 연속성이 보장되지는 않는다. Linked List 장점 vs 단점 장점 단점 - 데이터 공간을 미리 할당할 필요가 없다. - 리스트의 길이가 가변적이라 데이터 추가 / 삭제가 용이하다. - 연결구조를 위한 별도 데이터 공간이 필요하다. - 연결 정보를 찾는 시간이 필요하여 접근 속도가 상대적으로 느리다. - 데이터 추가, 삭제 시 앞뒤 데이터의 연결을 재구성하는 작업이 필요하다. Linked List 구조 Node -> 데이터 저장 단위로, 값과 포인터(연결 정보)로 구성되어 있다. 데이터 추가 방법 단방향 연결리스트 더보기 public void addData(int data,..
외젠 샤를 카탈랑이 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
행복한 수란, 각 자리수를 제곱한 것을 더하는 과정을 반복했을 때 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() 를 통해서 숫자의 자릿수를 알 수 있었다. 주어진 수를 나머..
파스칼의 삼각형은 수학에서 이항계수를 삼각형 모양의 기하학적 형태로 배열한 것이다. 삼각형의 행의 수가 입력으로 주어졌을 때 파스칼의 삼각형을 출력하라. 삼각형을 그리는 규칙은 다음과 같다. 숫자가 들어갈 칸을 첫 번째 줄에는 1개, 두 번째 줄에는 2개, 세 번째 줄에는 3개 이런 식으로 한 줄씩 내려가면 한 칸씩 늘어나게 정삼각형 모양으로 만든다. 첫 번째 줄과 두 번째 줄의 3칸에는 1을 쓴다. 세 번째 줄부터는 줄의 양쪽 끝 칸에는 1을 쓰고 나머지 칸에는 바로 윗줄에 위치한 칸 중 해당 칸과 인접해 있는 두 칸의 숫자를 더해서 그 값을 쓴다. 이 규칙에 따라 삼각형을 그려보면 위 그림처럼 된다. - 출처 나무위키 - 파스칼 삼각형을 ArrayList 로 구현하였다. 삼각형의 한 행을 ArrayL..
두 수가 주어지며, 두수의 최대 공약수와 최소 공배수를 구하라 약수란? 약수란 어떤 수를 나누어떨어지게 하는 수를 말한다. 약수에는 항상 1과 자기 자신을 포함한다. 12의 약수를 구하면 1, 2, 3, 4, 6, 12 가 된다. 최대 공약수란? 0 이 아닌 두 개 이상의 정수의 공통되는 약수 중에서 가장 큰 수 이다. 따라서 두 정수 a, b 의 최대 공약수는 a 의 약수인 동시에 b의 약수인 수, 즉 두 정수 a, b 의 공약수 중에서 가장 큰 수를 의미한다. 최소 공배수란? 0이 아닌 두 개 이상의 정수의 양의 공배수 중에서 가장 작은 수이다. 따라서 두 정수 a, b의 최소 공배수는 a 의 배수인 동시에 b 의 배수인 수, 즉 두 정수 a, b 의 공배수 중에서 양수인 것 중 가장 작은 수를 의미..
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 |