# 示例代码:使用 Python 实现循环数组
class CircularArray:
def __init__(self, size):
self.size = size
self.array = [None] * size
self.head = 0
def insert(self, value):
# 在当前 head 位置插入值,并将 head 向前移动一位
self.array[self.head] = value
self.head = (self.head + 1) % self.size
def get(self, index):
# 获取循环数组中指定索引的值
if index < 0 or index >= self.size:
return None
return self.array[(self.head + index) % self.size]
def display(self):
# 显示循环数组中的所有元素
for i in range(self.size):
print(self.get(i), end=" ")
print()
# 使用示例
circular_array = CircularArray(5)
circular_array.insert(1)
circular_array.insert(2)
circular_array.insert(3)
circular_array.insert(4)
circular_array.insert(5)
circular_array.display() # 输出: 1 2 3 4 5
circular_array.insert(6) # 插入新元素,覆盖最旧的元素
circular_array.display() # 输出: 6 2 3 4 5
array 和一个指向当前插入位置的指针 head。head 位置插入一个新值,并将 head 向前移动一位。如果 head 达到数组末尾,则回到数组开头(通过取模运算实现)。head 的位置,因此实际索引是 (head + index) % size。希望这个示例能帮助你理解如何在 Python 中实现和使用循环数组!
上一篇:python 逻辑运算符
下一篇:python 打开文件夹
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站