본문 바로가기

카테고리

(33)
링크드 리스트 링크드 리스트는 리스트 List와 덱 Deque 등을 구현한 클래스입니다. 링크드 리스트에 대해 알아보기 전에 리스트와 덱에 대해 먼저 알아보았습니다. 리스트 인터페이스 리스트 인터페이스는 순서가 있는 컬렉션으로 시퀀스 sequence 라고도 불립니다. 요소가 삽입될 위치를 조정할 수 있고, 인덱스로 요소에 접근할 수 있고, 리스트 내의 요소들을 검색할 수 있습니다. 아래 표는 각 기능을 구현한 메서드에 대한 설명입니다. 인덱스로 요소에 접근하는 메서드 구현한 클래스에 따라 요소를 인덱스로 접근하는데 인덱스의 값에 따라 실행 시간이 소요될 수 있습니다. (예: 링크드 리스트) get 메서드가 여기에 해당합니다. 리스트 내의 요소들을 검색하는 메서드 성능적인 면에서 주의해서 사용해야 하는데, 대부분의 구현..
어레이 리스트 어레이 리스트 특징 어레이 리스트 ArrayList 클래스는 컬렉션 인터페이스 포스트에서 말한 Collection 인터페이스를 구현한 객체 중 하나입니다. 다음과 같은 특징을 가지고 있습니다. List 인터페이스를 구현한 클래스이며, 요소로는 null을 포함한 모든 타입을 가질 수 있습니다. 변경할 수 있는 메서드를 지원하고, 가변 객체이고, 가변 크기 리스트이며, 임의 접근 리스트입니다. size, isEmtpy, get, set, iterator 등은 O(1), add와 나머지 대부분의 메서드들은 O(n)의 시간 복잡도를 가집니다. 배열 용량 capacity 어레이 리스트 객체는 리스트 내부에 요소들을 저장하는데 사용하는 배열의 크기를 지칭하는 배열 용량 capacity 를 가지고 있습니다. 어레이 ..
컬렉션 인터페이스 컬렉션 프레임워크 컬렉션 collection 은 어레이 리스트 클래스, 해시 셋 클래스, 벡터 클래스와 같은 객체들을 나타내는 객체이고, 컬렉션 프레임워크 collection framework는 컬렉션들을 나타내고 조작하는 아키텍처입니다. 컬렉션 프레임워크를 적절히 활용하면 프로그래밍 비용을 줄이고, 성능을 높일 수 있습니다. 컬렉션 프레임워크는 컬렉션의 각기 다른 타입을 나타내는 컬렉션 인터페이스, 컬렉션 소팅과 같은 정적 메서드 등으로 이루어져 있으며, 그중 컬렉션 인터페이스는 컬렉션 프레임워크의 가장 기반을 이룹니다. 컬렉션 인터페이스 컬렉션 인터페이스는 java.util.Collection 과 java.util.Map 두 그룹으로 나뉩니다. 인터페이스 구현 클래스 Collection ArrayLi..