创建字符串采用带头结点的单链表存储
时间: 2023-09-02 14:15:41 浏览: 41
以下是用Python语言实现的创建字符串采用带头结点的单链表存储的代码:
```python
class Node:
def __init__(self, data=None):
self.data = data
self.next = None
class String:
def __init__(self):
self.head = Node() # 头结点
self.length = 0
def create(self, s):
for char in s:
node = Node(char)
node.next = self.head.next
self.head.next = node
self.length += 1
def print(self):
node = self.head.next
while node:
print(node.data, end='')
node = node.next
print()
# 示例代码
s = String()
s.create('hello')
s.print() # 输出:olleh
```
在代码中,`Node`类表示链表中的节点,包含一个`data`属性和一个`next`属性,分别表示节点的数据和指向下一个节点的指针。`String`类表示字符串,包含一个`head`属性和一个`length`属性,分别表示头结点和字符串的长度。其中,`head`属性是一个空节点,用于方便处理链表。`create()`方法接收一个字符串,遍历字符串中的每一个字符,创建一个新的节点并将其插入到链表的头部。`print()`方法用于打印链表中的所有字符。在示例代码中,我们创建了一个字符串对象`s`,调用`create()`方法创建了一个字符串`hello`,并调用`print()`方法打印了反转后的字符串`olleh`。