Set
// Set
// - 비선형 저장소
// - 중복이 허용되지 않는 저장소
// - 인덱스의 개념이 존재하지 않는다(인덱스 관련된 명령이 없다)
// - 순서가 이미 정해져 있는 저장소(ex : 전화번호부)
// - TreeSet : Tree 알고리즘이 적용된 저장소
// - HashSet : Hash 알고리즘이 적용된 저장소
// Set의 출력(전체탐색)
// - Set은 구조적으로 index가 존재할 수 없다.
// - index와 관련된 명령(ex : get(), indexOf()) 등이 없다
// - 대신 전체 조회할 수 있는 방법은 있다.
// - 집합연산
// = 합집합, 교집합, 차집합 등의 연산을 Set을 이용하여 처리할 수 있다.
Map
// Map
// = key-value 저장소
// = key : 식별을 위한 데이터(ex : 아이디, 변수명)
// = value : 중복이 가능한 데이터(ex : 비밀번호, 변수값)
// = key를 찾기만 하면 매우 빠른 속도로 value를 접근할 수 있음
// = 개별 데이터 관리에 특화
// = TreeMap, HashMap, Hashtable(비추천)
// Map은 전체 출력이 안되나?
// = 되지만 조금 복잡하다
// = Map의 Key만 놓고보면 Set과 동일한 구조를 가진다.
// = Map에서 Key만 분리 ---> Set으로 저장 ---> 반복으로 Key를 추출 ---> Value 같이 추출
Stack이랑 Queue 차이점
// Stack
// = 잘 알려진 특수한 방식으로 운영되는 저장소
// = LIFO(Last-IN First-Out)방식의 저장소
// = List를 상속받았으나 List처럼 사용을 안한다
// = 이력관리 등에 유용하게 사용됨
// = 프로그램 메소드 실행, 하노이타워, 방문했던 사이트 이력, Ctrl+z키의 원리
// Queue
// = 대기열 형식의 데이터 처리가 가능한 저장소
// = FIFO(Fist-In First-Out, 선입선출) 형식의 저장소
// = 순차적인 실행이 필요한 경우 유용하게 사용됨
// = 메세지 큐, 입력 큐 등
// = Blocking이냐 Non-blocking 이냐 등에 따라서 다양한 형태가 존재
collection 개 재미없어 다음 진도 빨리나갔으면
해당 댓글은 삭제되었습니다.
왜배우는지 모르겠음 그냥 무지성 List 쓰면 되는거 아님?
ㅠㅠ
깔끔하다 몇주정도됬음 진도나간지?
이제 한달