Algorithm (12) 썸네일형 리스트형 기본 자료구조 - 스택[stack] 스택 데이터를 일시적으로 저장하기 위해 사용하는 자료구조 후입선출(LIFO, Last In First Out) - 가장 나중에 넣은 데이터를 가장 먼저 꺼낸다. ■ 스택 자료구조 스택에 데이터를 넣는 작업을 푸시(push) 스택에서 데이터를 꺼내는 작업을 팝(pop) 1) 스택 용량 : max 스택에 쌓을 수 있는 최대 데이터 수를 나타내는 필드 2) 스택 포인터 : ptr 스택에 쌓여있는 데이터 수 3) 스택 생성자 스택 본체용 배열 생성 4) push 메서드 스택에 데이터를 푸시, 스택이 가득 찬 경우 OverflowInStackException을 던진다. 5) pop 메서드 스택의 top에서 데이터를 제거하고 그 값을 반환, 스택이 비어 있을 경우 EmptyInStackException을 던진다. .. 검색 알고리즘 - 이진 검색 이진 검색 이진 검색(binary search)는 요소가 오름차순 또는 내림차순으로 정렬된 배열에서 특정한 값을 검색하는 알고리즘 선형 검색보다 더 빠르개 검색할 수 있는 장점이 있다. ■ 이진 검색 알고리즘 이진 검색을 한 단계씩 진행할 때마다 검색 범위가 반으로 좁혀진다. 검색 범위의 맨 앞 인덱스를 pl, 맨 끝 인덱스를 pr, 중앙 인덱스를 pc라고 가정 검색을 시작할 때, pl은 0, pr은 (n-1), pc는 (n-1)/2으로 초기화 된다. 1) a[pc] .. 검색 알고리즘 - 선형 검색 검색 알고리즘 데이터 집합에서 원하는 값을 가진 요소를 찾아내는 알고리즘 배열 검색 선형 검색 : 무작위로 늘어놓은 데이터 모임에서 검색을 수행 이진 검색 : 일정한 규칙으로 늘어놓은 데이터 모임에서 검색을 수행 해시법 : 추가, 삭제가 자주 일어나는 데이터 모임에서 검색을 수행 선형 검색[linear search] 원하는 키 값을 갖는 요소를 만날 때까지 맨 앞부터 순서대로 요소를 검색하게 되는데, 이를 선형 검색 또는 순차 검색 알고리즘이라고 한다. [검색의 종료 조건] 1) 검색할 값을 발견하지 못하고 배열/리스트의 끝을 지나간 경우 - 검색 실패 2) 검색할 값과 같은 요소를 발견한 경우 - 검색 성공 ■ 선형 검색 알고리즘 배열 a의 처음부터 끝까지 n개의 요소를 대상으로 값이 key인 요소를 .. 기본 자료구조 - 배열 자료구조 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법 배열 같은 자료형의 변수로 이루어진 구성요소(component)가 모인 것 ■ 배열의 기본적인 특성 public class IntArray { public static void main(String[] args) { int[] array = new int[] {1,2,5,6,9}; //배열 선언 및 초기화 //배열의 각 요소 출력 for (int i=0; i 이전 1 2 다음