반응형

연결리스트 2

파이썬에서는 연결리스트를 배울 필요가 없는걸까?

안녕하세요 Dibrary입니다. 파이썬으로 설명된 자료구조 책을 보면 여느 다른 책들과 같이 '리스트, 트리, 정렬, 탐색, 그래프' 등이 나와있습니다. 근데 파이썬을 자주 써 본 사람이라면 이런 의문이 들죠. 파이썬에서는 어차피 리스트 자료형이 있는데.... 물론, 저도 그런 생각을 한 적이 있습니다. (그리고 그 리스트 자료형은 여기서 말한 연결리스트도 아니죠;;) 그런 혼란을 가지고 있지만 불편함은 없어서 그냥 유야무야 넘어가다가, 자료형 리스트가 아닌 자료구조 '단순 연결리스트, 이중 연결리스트, 원형 연결리스트' 등을 배워야 하는 이유를 최근에 알고리즘을 풀다가 깨달았습니다. 1. 불필요한 공간 낭비를 위해서 사용할 수 있다. 애초에 리스트를 배열 대신에 쓰는 이유는 공간 사용의 효율을 높이기 ..

연결리스트 - 이중 연결 리스트

안녕하세요 Dibrary입니다. 앞에서 단일연결 리스트를 보셨다면, '역순으로도 확인할 수 있으면 좋겠다~' 싶은 생각이 드셨을 수 있는데, 이 기능도 같이 구현한 것이 이중연결 리스트 입니다. 2022.05.17 - [자료구조] - 연결리스트 - 단순 연결 리스트 이렇게 양방향 화살표인 셈이죠. 근데, 사실 '개념'은 이래도, 양방향으로는 각 Node별로 앞, 뒤가 나뉘어져 있습니다. 따라서, 아래와 같이 표현하는 게 좀 더 정확합니다. 그래도 앞에서 뒤로, 뒤에서 앞으로 올 수 있다는 사실은 변함이 없습니다. 이번에도 파이썬으로 코드 구현을 해보겠습니다. 먼저 노드만을 만들어 보고 기본 개념 확인을 해보겠습니다. A와 B와 C라는 노드를 만들고, A B C 이렇게 연결 했습니다. A부터 C까지 값을 ..

자료구조 2022.05.26
반응형