목록연결리스트 (2)
꿈 많은 사람의 이야기
최근 다시 한 번 알고리즘, 자료구조를 공부하고 싶었다 솔직히 알고리즘까지는 아니더라도 자료구조라도 공부를 하고 싶었다 그래서 파이썬으로 코드를 작성하며 공부를 해보려고 한다 이번 편은 파이썬으로 해보는 자료구조 연결 리스트(linked list)이다 연결리스트는 어찌보면 배열과 비슷하지만 구조적으로 다르다 배열은 같은 성질끼리(요즘엔 언어에 따라서 다른 성질도 묶어도 되지만) 연속적으로 되어 있는 상태이다 연결 리스트(linked list)는 구조상으로 봤을 때 계속 링크를 따라서 이어지는 구조이다 이런식으로 말이다 하나의 노드에 데이터와 다음 노드를 가리키는 next point가 있다 이런 식으로 쭉 이어나가고 중간에 삽입, 삭제도 가능하도록 코드를 구성해보겠다 파이썬으로! python data st..
연결리스트란 자료가 링크로 연결되어 있는 구조를 말한다. 말 다 필요없고 그림으로 보면 간단하다. 이렇게 되어 있는 것이 연결리스트이다. 예시로 설명하면 노드는 이름과, 다음번지 값을 가지고 있다. 10번지 노드는 이름이 김, 다음번지(20)의 값 20번지 노드는 이름이 이, 다음번지(30)의 값 30번지 노드는 이름이 박, 다음번지(40)의 값 40번지 노드는 이름이 홍, 다음번지(null)의 값 이다. 40번지 값이 가장 최근에 들어온 값으로 했다 (새로운 노드를 start 지점에 두는 방법도 있지만 본인은 이런식으로 구현했다) 기본적으로 자바에선 LinkedList를 클래스로 제공해주지만 직접 소스로 구현해보면 객체지향, 자료구조 등의 측면에서 많은 도움이 된다. cur은 값이 추가될 때마다 맨 끝..