본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
학습 인증샷
오늘은 연결 리스트에 대한 강의를 들었다. 파이썬은 기본적으로 리스트와 같은 자료구조를 제공하기 때문에, 직접 연결 리스트를 구현해야 하는 경우는 많지 않다. 하지만 연결 리스트의 개념과 작동 원리를 이해하면, 다음에 기계 학습이나 다양한 애플리케이션 개발에서 이를 적절히 활용할 수 있는 기회가 많아진다고 한다. 이론적으로는 필요성이 적어 보일 수도 있지만, 실제로 프로그램을 개발할 때 특정 상황에서는 매우 유용하게 쓰일 수 있다고 한다. 따라서 확실한 개념을 지금부터 알아둬야겠다고 느꼈다.
연결 리스트는 각 노드가 데이터와 다음 노드를 가리키는 포인터를 포함하는 방식으로 구성된다. 이러한 구조 덕분에 삽입과 삭제 연산이 비교적 간단하다는 장점이 있다. 특정 노드를 삭제하거나 새로운 노드를 추가할 때, 기존 배열과 달리 모든 요소를 이동시키지 않고 단순히 연결 관계만 변경하면 된다. 예를 들어, 배열에서는 중간에 요소를 삽입하거나 삭제하려면 해당 위치 이후의 모든 요소를 한 칸씩 이동해야 한다. 하지만 연결 리스트에서는 삽입할 위치만 알고 있다면, 앞뒤 노드의 포인터만 수정하면 되므로 물리적인 데이터를 이동할 필요가 없다. 이러한 점에서, 데이터를 자주 추가하거나 삭제해야 하는 프로그램에서는 연결 리스트가 더 적합할 수 있다.
이러한 특징 덕분에 연결 리스트는 삽입과 삭제가 빈번하게 발생하는 경우에 유용하게 사용할 수 있다. 다만, 배열에 비해 임의 접근이 어렵다는 단점이 있기 때문에, 상황에 따라 적절한 자료구조를 선택하는 것이 중요하다. 오늘 배운 개념들을 실제로 적용해 보지 않아서 아직 완전히 와닿지는 않지만, 복습을 꾸준히 하고 직접 구현해 보면서 익혀야겠다고 느꼈다. 이론적으로 이해하는 것과 실제로 활용하는 것은 차이가 있기 때문이다. 오늘 수업 시간에 코드를 보여줬지만 조금 더 많은 예시를 본다면 더 이해가 빠를 거 같아 기회가 될 때 직접 코드를 작성해 보면서 익숙해져야겠다는 생각이 들었다.
'IT' 카테고리의 다른 글
패스트캠퍼스 환급챌린지 13일차 : 딥러닝·인공지능 Signature 초격차 패키지 강의 후기 (0) | 2025.03.17 |
---|---|
패스트캠퍼스 환급챌린지 12일차 : 딥러닝·인공지능 Signature 초격차 패키지 강의 후기 (0) | 2025.03.16 |
패스트캠퍼스 환급챌린지 10일차 : 딥러닝·인공지능 Signature 초격차 패키지 강의 후기 (0) | 2025.03.14 |
패스트캠퍼스 환급챌린지 9일차 : 딥러닝·인공지능 Signature 초격차 패키지 강의 후기 (0) | 2025.03.13 |
패스트캠퍼스 환급챌린지 8일차 : 딥러닝·인공지능 Signature 초격차 패키지 강의 후기 (1) | 2025.03.12 |