공부/자료구조

    Set

    Set의 개념 데이터를 비순차적으로 저장하는 자료구조 수정 가능 중복 비허용 (중복 시 마지막에 저장한 값 하나만 저장) 특징 hashCode, equals 메서드 오버라이드 필수 Set의 사용 빠른 데이터 탐색이 필요할 때 중복을 골라내야할 때

    큐(Queue)

    큐란? 선입선출(FIFO)의 데이터 입출력 순서를 가진 데이터 일시저장 자료구조이다. 큐에 데이터를 넣는 작업을 인큐(enque), 데이터를 꺼내는 작업을 디큐(deque)라 하고, 데이터를 꺼내는 쪽을 프런트(front), 데이터를 넣는 쪽을 리어(rear)라고 한다. 스택을 구현할 때 배열을 이용했던 것처럼 큐를 구현할때도 배열을 이용하면 된다. 먼저 단순히 배열을 이용하여 구현하는 방법이다. 1. 배열 이용한 큐 구현 public class IntArrayQueue { private int max; private int num; private int[] que; // 실행할 때 예외:큐가 비어 있음 public class EmptyIntArrayQueueException extends Runtime..

    스택(Stack)

    스택이란? 데이터를 일시적으로 저장하기 위해 사용하는 자료구조로 데이터의 입출력 순서는 후입선출(LIFO)이다. 스택에 데이터를 넣는 작업을 푸시(push)라 하고, 스택에서 데이터를 꺼내는 작업을 팝(pop)이라 한다. 푸시와 팝을 하는 위치를 꼭대기(top)이라 하고, 스택의 가장 아랫부분을 바닥(bottom)이라 한다. int형을 저장하는 스택을 만들고 스택과 관련된 주요 메서드들을 만들어 보는 과정을 통해 스택을 이해해보자. package chap04; public class IntStack { private int max; //스택용량 private int ptr; //스택 포인터 private int[] stk; //스택 본체 //실행예외 : 스택 비어있음 public class EmptyIn..

    배열

    배열 같은 자료형의 변수로 이루어진 구성요소가 모인 것 //선언방법 자료형[] 배열명; 자료형 배열명[]; //ex) int형 배열 a 선언 int[] a; int a[]; //int형이고 구성요소가 5개인 배열을 a가 참조 int[] a = new int[5]; a : 배열 본체를 참조하는 배열 변수 new 연산자 : 배열 본체에 대한 참조 생성 배열 인덱스는 0부터 시작 요소수 (= 배열의 길이) 배열의 본체와 함께 배열의 구성 요소 개수인 요소수를 나타내는 length라는 변수가 만들어짐 배열변수명.length 기본값 값을 대입하지 않은 배열의 구성요소는 자동으로 0으로 초기화 됨 구성요소를 초기화 하는 값 = 배열 생성 시 구성요소에 넣어지는 값 = 초기값 //배열 초기화하여 생성 int[] a ..