单向链表、约瑟夫问题的代码
时间: 2023-05-19 08:05:46 浏览: 105
以下是单向链表和约瑟夫问题的代码:
单向链表:
```
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if self.head is None:
self.head = new_node
return
current_node = self.head
while current_node.next is not None:
current_node = current_node.next
current_node.next = new_node
def print_list(self):
current_node = self.head
while current_node is not None:
print(current_node.data)
current_node = current_node.next
```
约瑟夫问题:
```
def josephus(n, k):
if n == 1:
return 1
else:
return (josephus(n - 1, k) + k-1) % n + 1
```
请注意,这些代码仅供参考,可能需要根据具体情况进行修改。