단일 연결 리스트는 일련의 노드로 구성된 공통 데이터 구조이며, 각 노드에는 요소와 다음 노드에 대한 포인터가 포함됩니다. 클래스를 사용하여 Python에서 단일 연결 목록을 구현할 수 있습니다.
먼저, 요소와 다음 노드에 대한 포인터를 포함하는 노드 클래스를 정의합니다.
class Node: def __init__(self, data=None, next_node=None): self.data = data self.next_node = next_node
여기서 data는 노드의 요소를 나타내고 next_node는 다음 노드에 대한 포인터를 나타냅니다.
다음으로, 단일 연결 목록 작업 삽입, 삭제, 검색 및 인쇄와 같은 몇 가지 기본 작업 메서드와 헤드 노드를 포함하는 단일 연결 목록 클래스를 정의합니다.
class LinkedList: def __init__(self): self.head = Node() def insert(self, data): new_node = Node(data) current_node = self.head while current_node.next_node is not None: current_node = current_node.next_node current_node.next_node = new_node def delete(self, data): current_node = self.head previous_node = None while current_node is not None: if current_node.data == data: if previous_node is not None: previous_node.next_node = current_node.next_node else: self.head = current_node.next_node return previous_node = current_node current_node = current_node.next_node def search(self, data): current_node = self.head while current_node is not None: if current_node.data == data: return True current_node = current_node.next_node return False def print_list(self): current_node = self.head.next_node while current_node is not None: print(current_node.data) current_node = current_node.next_node
위 코드에서 삽입 메서드는 new 노드는 단일 연결 리스트의 끝에 삽입됩니다. delete 메소드는 지정된 요소가 위치한 노드를 삭제합니다. 검색 방법은 단일 연결 리스트에 노드가 존재하는지 찾는 데 사용됩니다. print_list 메소드는 전체 단일 연결 리스트를 인쇄하는 데 사용됩니다.
마지막으로 단일 연결 목록 클래스를 테스트할 수 있습니다.
linked_list = LinkedList() linked_list.insert(1) linked_list.insert(2) linked_list.insert(3) linked_list.insert(4) print(linked_list.search(3)) # True print(linked_list.search(5)) # False linked_list.delete(3) linked_list.print_list() # 1 2 4
위는 Python을 사용하여 단일 연결 목록을 구현하는 기본 단계입니다. Python의 특징은 간단하고 이해하기 쉽고, 적은 양의 코드로 읽고 이해하기 쉽다는 점에서 Python을 데이터 구조 구현에 매우 적합한 프로그래밍 언어로 만듭니다.
위 내용은 Python을 사용하여 단일 연결 목록을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!