목록분류 전체보기 (155)
Rootable의 개발일기
📌 Queue Queue는 '대기열' 개념으로 선입선출(FIFO) 구조를 가진 자료구조다. 시간 순으로 어떤 작업 또는 데이터를 처리할 때 사용되며, 대표적으로 BFS(너비 우선 탐색)에 사용된다. MethodDescriptionboolean add(Object o)지정된 객체를 Queue에 추가저장공간 부족 시 IllegalStateException 발생Object remove()Queue에서 객체를 꺼내 반환비어있을 경우 NoSuchElementException 발생Object element()삭제없이 요소를 읽어온다.비어있을 경우 NoSuchElementException 발생boolean offer(Object o)Queue의 마지막에 객체를 추가Object poll()Queue의 첫 번째 요..
🔸 ArrayList 구현 package list.arrayList;import interface_form.ListInterface;import java.util.Arrays;public class ArrayList implements ListInterface, Cloneable { private static final int DEFAULT_CAPACITY = 10; //최소(기본) 용적 크기 private static final Object[] EMPTY_ARRAY = {}; //빈 배열 private int size; //요소 개수 Object[] array; //요소를 담을 배열 //생성자1 (초기 공간 할당x) public ArrayList(..
❓ List 인터페이스란 중복을 허용하면서 저장 순서가 유지되는 컬렉션을 구현하는 데 사용되는 인터페이스 ✔ Thread-safe멀티스레드 프로그래밍에서 여러 스레드가 공유 자원을 사용할 때, 작업 후 원하는 결과가 나오는 것을 보장하는 성질이를 위해 임계 영역, Lock 등을 사용하여 한 작업의 결과가 일관성 있게 반영되도록 한다. 하지만 Thread-unsafe보다 속도가 느리기 때문에 멀티스레드 환경이 아니라면 굳이 사용할 필요가 없다. ✅ 특징 저장 순서가 유지됨중복 저장 허용배열과 마찬가지로 index로 요소 접근동적인 자료형 크기요소 사이에 빈 공간을 허용하지 않아 삽입/삭제마다 배열 이동이 일어난다. 📚 Methods MethodDescriptionvoid add(int index, Ob..
❓ Collection Framework란? Java에서 데이터를 저장하는 기본 자료구조들을 한 곳에 모아 관리하고 편리하게 사용하기 위해 제공하는 인터페이스 🗨 Collection여러 요소들을 담을 수 있는 자료구조로서 다수의 데이터 그룹 또는 컨테이너(Container)라고도 부른다.배열은 다음과 같은 단점이 있다.- 최초 크기가 할당된 이후 변경 불가- 같은 기본형 데이터 자료형만 저장- 요소의 삽입/삭제가 어려움컬렉션은 배열의 단점들을 해소하기 위해 등장했다. 😀 장점 인터페이스와 다형성을 이용한 객체지향적 설계를 통해 표준화되어 있기 때문에 사용법을 익히기에 편리하고 재사용성이 높다.이미 구현되어 있는 API를 사용하면 되므로 새로운 API를 익히고 설계하는 시간이 줄어든다.관련 없는 AP..