본문 바로가기
알고리즘 & 자료구조/자료구조-Java

Linked List

by 신재권 2021. 7. 14.
package review1;

import java.util.LinkedList;

public class LinkedList02 {
	
//	LinkedList는 ArrayList에 비해 접근 시간이 느리다.(데이터가 떨어져 있기 떄문) (prev,next로만 연결됨)
//	하지만 data의 추가 삭제는 빠르다.
//	데이터가 많을 수록 접근성이 떨어진다.

	
	public static void main(String[] args){
		LinkedList<Integer> data_list = new LinkedList<Integer>();
		//데이터 추가
		data_list.add(1);
		data_list.add(2);
		data_list.add(3);
		System.out.println(data_list); //[1, 2, 3]
		
		//첫번째 요소에 데이터 추가 
		data_list.addFirst(4);
		System.out.println(data_list); //[4, 1, 2, 3]
		
		//중간에 데이터 추가
		data_list.add(1, 5);
		System.out.println(data_list); //[4, 5, 1, 2, 3]

		//인덱스 번호에 저장되어 있는 객체 반환
		System.out.println(data_list.get(0)); //4
		
		// 지정된 객체가 저장되어 있는 위치 반환
		System.out.println(data_list.indexOf(1)); //1은 2번 인덱스에 존재
		
		//데이터 삭제
		data_list.remove(0);
		System.out.println(data_list); //[5, 1, 2, 3]
		
		//저장된 데이터 변경
		data_list.set(0, 4);
		System.out.println(data_list); //[4, 1, 2, 3]
		
		//데이터 비우기
		data_list.clear();
		System.out.println(data_list);
		
		//데이터 비어있는지 확인
		System.out.println(data_list.isEmpty());
	}
}

'알고리즘 & 자료구조 > 자료구조-Java' 카테고리의 다른 글

Stack  (0) 2021.07.15
Stack 구현  (0) 2021.07.14
Single Linked List  (0) 2021.07.14
Double Linked List  (0) 2021.07.14
ArrayList  (0) 2021.07.14