알고리즘 공부

· Algorithm
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(br.readLine()); // 테스트 케이스 배열 int[] arr = new int[T]; int max = 0; for(int i=0;i
· Algorithm
이 포스팅에서 작성하는 내용은 이것이 취업을 위한 코딩테스트다 (나동빈 지음) 에서 발췌하였습니다. 1. 1로 만들기 import java.util.Scanner; public class Main { // 30000까지 포함이므로 30000+1하여 선언 public static int[] d = new int[30001]; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int x = sc.nextInt(); sc.close(); // 다이나믹 프로그래밍 (Bottom-up 방식) for (int i = 2; i
· Algorithm
이 포스팅에서 작성하는 내용은 이것이 취업을 위한 코딩테스트다 (나동빈 지음) 에서 발췌하였습니다. 기본 문제 1. 위에서 아래로 해결 방법 : JAVA 기본 라이브러리를 이용 public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int num = Integer.parseInt(br.readLine()); int[] arr = new int[num]; for(int i=0;i
· Algorithm
이 포스팅에서 작성하는 내용은 이것이 취업을 위한 코딩테스트다 (나동빈 지음) 에서 발췌하였습니다. 탐색(Search) : 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정 대표적인 탐색 알고리즘 : DFS / BFS 자료구조(Data Structure) : 데이터를 표현하고 관리하고 처리하기 위한 구조 삽입(Push) : 데이터 삽입 삭제(Pop) : 데이터 삭제 오버플로(Overflow) : 공간이 꽉 찼는데 삽입 연산을 하면 발생 언더플로(Underflow) : 공간에 데이터가 없는데 삭제 연산을 하면 발생 자료구조 스택(Stack) : FILO(First In Last Out)의 선입후출 구조. 즉, 데이터가 먼저 들어가면 가장 늦게 나오는 구조. import java.util.Stack; pu..
· Algorithm
이 포스팅에서 작성하는 내용은 이것이 취업을 위한 코딩테스트다 (나동빈 지음) 에서 발췌하였습니다. 1. 복잡도(Complexity) 복잡도 : 알고리즘의 성능을 나타내는 척도이며, 시간복잡도와 공간복잡도로 나눌 수 있다. 시간복잡도(Time Complexity) : 특정한 크기의 입력에 대하여 알고리즘의 시간이 얼마나 걸리는가. 즉, 그 알고리즘을 수행하는 데 걸리는 시간 공간복잡도(Space Complexity) : 특정한 크기의 입력에 대하여 알고리즘이 얼마의 메모리를 차지하는가. 즉, 그 알고리즘을 수행하는 데 필요하는 메모리 효율적인 알고리즘 구축에는 시간복잡도와 공간복잡도 간의 일종의 거래관계가 존재한다. 알고리즘의 소요시간을 단축시키는 대신에, 메모리를 더 많이 잡아먹는다던가 알고리즘의 소요..
멍목
'알고리즘 공부' 태그의 글 목록 (19 Page)