언어공부/스위프트
[swift] Linked List 정리 (1)
시간 복잡도에 대한 내용은 자세히 다루지는 않을 예정이다. 본 글은 오로지 Linked List에 대한 내용만 기술할 것이다. 혼자 노트정리 한다고 생각하고 정리해 나갈 것이다. 시각 자료등은 유데미의 스위프트로 공부하는 데아터 구조를 참조하자. 직접 그려 넣고 싶지만 시간이 많이 걸려 하진 않을 것임. 먼저 링크드 리스트가 뭔지부터 알기 전에 배열의 특성을 살펴보자. 배열을 하나 만들었다고 가정하고 맨 앞에 요소를 하나 추가한다고 해보자. 그러면 시간은 얼마나 걸릴까? 답은 O(n)이다. 맨 앞에 요소를 추가하려면 먼저 있는 요소들을 한칸씩 밀어야 하기 때문이다. 만약 요소 1개당 1ms가 걸린다고 가정하고 요소가 백만개가 있다고 쳐보면 1000000ms -> 약 16.7분 정도가 걸린다. 너무 느려터..