算法与数据结构基础实例代码

以下是一个简单的算法与数据结构基础实例代码,使用Python语言实现一个简单的链表数据结构以及插入、删除和查找操作:

python
class Node:  
    def __init__(self, data=None):  
        self.data = data  
        self.next = None  
  
class LinkedList:  
    def __init__(self):  
        self.head = None  
  
    def insert(self, data):  
        if not self.head:  
            self.head = Node(data)  
        else:  
            current = self.head  
            while current.next:  
                current = current.next  
            current.next = Node(data)  
  
    def delete(self, data):  
        if self.head is None:  
            return  
        if self.head.data == data:  
            self.head = self.head.next  
            return  
        current = self.head  
        while current.next:  
            if current.next.data == data:  
                current.next = current.next.next  
                return  
            current = current.next  
  
    def search(self, data):  
        current = self.head  
        while current:  
            if current.data == data:  
                return True  
            current = current.next  
        return False

这个例子中,我们定义了一个Node类表示链表中的节点,包含数据和指向下一个节点的指针。然后,我们定义了一个LinkedList类表示链表,包含一个头节点。在LinkedList类中,我们实现了插入、删除和查找操作。插入操作将一个新节点添加到链表的末尾,删除操作将与给定数据匹配的节点从链表中删除,查找操作检查链表中是否存在与给定数据匹配的节点。


害羞的蘑菇
1 声望0 粉丝