本关任务:要求针对链接存储方式实现的线性表完成数据插入、删除以及查找操作,以实现线性表数据操作功能。代码
时间: 2024-09-19 21:10:02 浏览: 52
在编程中,尤其是使用链表(Linked List)作为数据结构时,你可以通过创建节点(Node)类来实现线性表的数据插入、删除和查找操作。下面是一个简单的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_at_beginning(self, data):
new_node = Node(data)
new_node.next = self.head
self.head = new_node
def insert_at_end(self, data):
if not self.head:
self.head = Node(data)
return
last_node = self.head
while last_node.next:
last_node = last_node.next
last_node.next = Node(data)
# 删除操作
def delete(self, key):
if self.head is None or self.head.data == key:
self.head = self.head.next
return
prev_node = self.head
while prev_node.next and prev_node.next.data != key:
prev_node = prev_node.next
if prev_node.next:
prev_node.next = prev_node.next.next
# 查找操作
def search(self, key):
current_node = self.head
while current_node:
if current_node.data == key:
return True
current_node = current_node.next
return False
# 示例使用
ll = LinkedList()
ll.insert_at_beginning(1)
ll.insert_at_end(3)
print(ll.search(2)) # 输出: False (因为2不在链表中)
```
在这个例子中,`LinkedList` 类包含四个方法:`insert_at_beginning`、`insert_at_end`、`delete` 和 `search`,分别对应着线性表的基本操作。
阅读全文