python实现数组操作

实现列表

python中数组即为列表

初始化列表

my_list = [3, 1, 2, 5, 4, 9, 7, 2]

读取元素

print(my_list[2])

更新元素

my_list[3] = 10
print(my_list[3])

插入元素

#使用python底层方法实现
#尾部插入元素
my_list.append(6)
#中间插入元素
my_list.insert(5, 11)
print(my_list)
#自己实现插入
class MyArray:
    def __init__(self, capacity):
        self.array = [None] * capacity
        self.size = 0

    def insert_v2(self, index, element):
        if index < 0 or index > self.size:
            raise Exception("超出数据实际元素范围")
        if self.size >= len(self.array):
            self.resize()
        for i in range(self.size-1, index-1, -1):
            self.array[i+1] = self.array[i]
        self.array[index] = element
        self.size += 1

    def resize(self):
        array_new = [None] * len(self.array) * 2
        for i in range(self.size):
            array_new[i] = self.array[i]
        self.array = array_new

    def output(self):
        array_new = [None] * len(self.array) * 2
        for i in range(self.size):
            print(self.array[i])

删除元素

def remove(self, index):
    if index < 0 or index >= self.size:
        raise Exception("超出数组实际元素范围")
    for i in range(index, self.size):
        self.array[i] = self.array[i+1]
    self.size -= 1
posted @ 2022-06-17 13:56  D_WWW  阅读(108)  评论(0)    收藏  举报