1. Stack 이란? 2. Stack 사용 예시 3. 선언 방법 3-1 메서드 | Stack 이란? 스택은 '쌓아놓은 더미' 라는 뜻으로 데이터를 차례대로 쌓아두는 모양이다. 스택은 한쪽 끝에서 push() 해서 밀어넣고, 끝에서 부터 pop() 하여 꺼내는 LIFO(후입선출, Last In First Out)이다. 즉, 마지막에 넣은 데이터가 가장 먼저 나오는 형태이다. | Stack 사용 예시 웹 브라우저 방문기록(뒤로가기) 실행 취소(undo) 역순 문자열 만들기 후위 표기법 계산 깊이우선탐색 | 선언 방법 Stack stack = new Stack(); | 메서드 push(E) 값 추가 peek() 가장 상단 값 반환 pop() 가장 상단 값 반환 & 제거 clear() 전체 값 제거 (반환x)..
1. '에라토스테네스의 체'란 2. 장점 3. 알고리즘 4. JAVA로 구현 | '에라토스테네스의 체'란 고대 그리스의 수학자인 에라토스테레스가 만들어 낸 소수를 찾는 방법으로, 마치 체로 치듯이 수를 걸러낸다고 하여 '에라토스테네스의 체' 라고 불린다. | 장점 임의의 자연수 n에 대해 그 이하의 소수를 모두 찾는 간단하고 빠른 방법이다. 즉, 특정 범위 내의 소수를 찾을 때는 에라토스테네스의 체가 가장 빠르다. | 알고리즘 에라토스테네스의 체의 알고리즘은 다음과 같다. 2부터 소수를 구하고자 하는 구간의 모든 수를 나열한다. 그림에서 회색 사각형으로 두른 수들이 여기에 해당한다.2는 소수이므로 오른쪽에 2를 쓴다. (빨간색)자기 자신을 제외한 2의 배수를 모두 지운다.남아있는 수 가운데 3은 소수이므..
1. 브루트 포스 (Brute_force) 란? 2. 선형구조와 비선형구조 - 순차탐색, 깊이 우선 탐색, 깊이 우선 탐색 3. 브루트 포스의 문제점 | 브루트 포스 (Brute_force) 란? 브루트 포스는 암호 해독법 중 하나로, Brute : 난폭한, 짐승같은 + Force : 힘 의 합성어로 난폭한 힘 으로 해석이 되는데, 무식할 정도로 1부터 100까지 정확하게 해독한다는 뜻이다. 다시말해, 모든 경우의 수를 전체탐색하는 암호 해독법이다. 전체 탐색하는 방법으로는 두가지로 나눌 수 있다. | 선형구조와 비선형구조 전체 탐색에는 크게 선형구조(Linear) 와 비선형구조(Non Linear) 가 있다. 선형 구조는 데이터가 연속적으로 연결되어 있는 모양으로 전체적으로 탐색하는 순차 탐색이 있다...