모든 코드는 github LinkedList LinkedList는 요소와 요소 간 연결link을 이용해서 List를 구현한다. 중요한 것은 연결은 무엇인가를 파악하는 것이다. 반대로 무엇이 연결이 아닌가, 를 생각해보는 것도 의미가 있을 것이다. ArrayList는 배열을 이용하므로 요소와 요소가 딱 붙어있다. 비유하자면 일렬로 줄 서 있다고 할 수 있다. LinkedList는 그렇지 않다. LinkedList의 요소들은 각각 어딘가에 흩어져 있고, 각 요소는 다음 요소가 어디 있는지에 대한 정보만 가지고 있다. ArrayList는 원하는 데이터가 몇 번 인덱스에 있는 줄만 알면 바로 접근할 수 있다. 반면 LinkedList는 첫 번째 요소에게 다음 요소의 위치를 묻고, 두 번째 요소에게 세 번째 요소..