본문 바로가기

2017/09/292

[자료구조 알고리즘] 큐 - ADT, Array/Circular/LinkedQueue 구현 [큐]- FIFO : 첫번째로 들어온 데이터가 첫번째로 나감 - 데이터 저장 입구와 출구가 각각 나뉨- 예시 : 매표소, 맛집 줄 등 [큐 ADT]1) isEmpty : 큐가 비었는지 확인2) enQueue : 큐에 데이터 저장3) deQueue : 큐에서 데이터 빼기(삭제)4) qPeek : 첫번째로 저장된 데이터 조회 [큐 구현]- Array, Linked(노드 간 연결)로 구현 1) ArrayQueue- 고정적인 크기 - 내부적으로는 index로 제어- 1열 형태 + 고정적인 크기 : 입구는 막혔고, 출구는 조금씩 입구와 가까워질 때 데이터가 지워진 공간이 메모리 낭비 => CircularQueue 구현이유 2) CircularQueue- Array를 사용- ArrayQueue의 한계점을 극복하기위.. 2017. 9. 29.
[Java] 예외처리 - 예외란, 예외처리, 사용자정의예외, java7 예외처리 [예외]1) 사용자의 잘못된 조작 2) 개발자의 잘못된 코딩 - 위 2가지 이유로 인해서 발생하는 오류를 예외(exception)라 함, jvm 불능되는 오류를 에러라 함 - 예외가 발생하면 응용프로그램이 종료됨 - 아래는 예외의 종류 1) 일반 예외 : 컴파일 과정에서 체크되는 예외, 코드 상(컴파일 과정에서 처리)에서 발생하는 예외 2) 실행 예외 : 컴파일 과정에서 체크되지않는 예외, 런타임 떄 발생하는 예외 3) 어플리케이션 예외 : 사용자정의 예외(1, 2번 중 하나에 속해짐), 아래에서 어떻게 만드는지 설명 - 자바는 예외를 객체로 관리함 : 예외 발생 시 예외 객체 생성(최상위 : java.lang.Exception) 1) 일반 예외 : Exception 상속, RuntimeException.. 2017. 9. 29.