Computer Science
Deque (덱)
Deque 란? Restricted Structure의 끝판왕 느낌의 자료구조 양쪽 끝에서 삽입과 삭제가 전부 가능하다. Stack과 Queue를 Deque의 특별한 예시라고 생각해도 무방하다. Deque의 성질 원소의 추가가 O(1) 원소의 제거가 O(1) 제알 앞/뒤의 원소 확인이 O(1) 제일 앞/뒤가 아닌 나머지 원소들의 확인/변경이 원칙적으로 불가능 (STL deque에서는 index로 접근 가능) Deque 구현 및 기능 배열 또는 연결 리스트로 Deque를 구현할 수 있습니다. 배열을 통한 구현은 간단하며, 시작 지점을 배열의 중간으로 두어 양쪽으로 확장할 수 있습니다. Deque의 크기는 2 * MX + 1로 설정하고, 필요한 변수로는 큰 배열, 앞쪽과 뒤쪽을 가리키는 변수가 필요합니다. ..
Queue (큐)
Queue란? 한쪽 끝에서 원소를 넣고 반대쪽 끝에서 원소를 뺄 수 있는 자료구조 먼저 들어간 원소가 먼저 나오는 FIFO(First In First Out) 선입선출 자료구조 예) 공항 입국수속 대기줄 / 은행 업무창구 대기줄 등등 특정 위치에서만 원소를 넣거나 뺄 수 있는 Restricted Structure이다. Queue의 성질 원소의 추가가 O(1) 원소의 제거가 O(1) 제일 앞/뒤의 원소 확인이 O(1) 제일 앞/뒤가 아닌 나머지 원소들의 확인/변경이 원칙적으로 불가능 Queue 구현 및 기능 배열 및 연결 리스트로 구현 할 수 있다. Stack과 마찬가지로 배열을 통한 구현이 더 쉬우니 배열로 알아보자. Queue를 배열로 구현할 때는 원소를 담은 큰 배열 한개와 앞뒤를 가리키는 head,..
Stack (스택)
Stack 란? 한쪽 끝에서만 원소를 넣거나 뺄 수 있는 자료구조 먼저 들어간 원소가 제일 나중에 나오는 FILO(First In Last Out) 자료구조 큐나 덱도 스택처럼 특정 위치에서만 원소를 넣거나 뺄 수 있는데 이들을 Restricted Structure라고 한다. Stack의 성질 원소의 추가가 O(1) 원소의 제거가 O(1) 제일 상단의 원소 확인이 O(1) 제일 상단이 아닌 나머지 원소들의 확인/변경이 원칙적으로 불가능 단 배열을 이용해 스택을 구현하면 기본적인 스택의 기능 이외도 제일 상단이 아닌 나머지 원소들의 확인/변경이 가능 Stack 구현 및 기능 배열 혹은 연결 리스트를 이용하여 구현할 수 있다. 배열을 이용한 stack의 구현이 더 쉽다. 스택을 배열로 구현할 때는 원소를 담..
컬렉션 클래스 정리 & 요약
자바의정석 3rd Edition 2권을 참조하였습니다. https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=76083001 Java의 정석 저자는 자바를 소개하는데 그치지 않고 프로그래머로써 꼭 알아야하는 내용들을 체계적으로 정리하였으며 200페이지에 달하는 지면을 객체지향개념에 할애함으로써 이 책 한 권이면 객체지향 www.aladin.co.kr 컬렉션 클래스 정리 & 요약 지금까지 소개한 컬렉션 클래스의 특징과 관계를 그림으로 정리해보았다. 각 컬렉션 클래스마다 장단점이 있으므로 구현원리와 특징을 잘 이해해서 상황에 가장 적합한 것을 선택하여 사용하자. 컬렉션 특 징 ArrayList 배열기반, 데이터의 추가와 삭제에 불리, 순차적인 추가삭제는 제일빠름. 임의의..
Collections
자바의정석 3rd Edition 2권을 참조하였습니다. https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=76083001 Java의 정석 저자는 자바를 소개하는데 그치지 않고 프로그래머로써 꼭 알아야하는 내용들을 체계적으로 정리하였으며 200페이지에 달하는 지면을 객체지향개념에 할애함으로써 이 책 한 권이면 객체지향 www.aladin.co.kr Arrays가 배열 관련 메서드를 제공하는 것처럼, Collections는 컬렉션과 관련된 메서드를 제공한다. fill(), copy(0, sort(), binarySearch() 등의 메서드는 두 클래스에 모두 포함되어 있으며 같은 기능을 한다. 컬렉션의 동기화 멀티 쓰레드(multi-thread) 프로그래밍에서는 하나..
Properties
자바의정석 3rd Edition 2권을 참조하였습니다. https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=76083001 Java의 정석 저자는 자바를 소개하는데 그치지 않고 프로그래머로써 꼭 알아야하는 내용들을 체계적으로 정리하였으며 200페이지에 달하는 지면을 객체지향개념에 할애함으로써 이 책 한 권이면 객체지향 www.aladin.co.kr Properties HashMap의 구버전인 Hashtable을 상속받아 구현한 것 Hashtale은 키와 값을 (Object, Object)의 형태로 저장하나 Properties는 (String, String)의 형태로 저장하기에 보다 단순화된 컬렉션클래스 주로 애플리케이션의 환경설정과 관련된 속성(property)을 ..