要求将算法1~6设计为3. 3. 4节定义的顺序表Dy

要求将算法1~6设计为3. 3. 4节定义的顺序表DynamicArrayList类的方法。

1.设计算法,在顺序表中删除所有奇数位序的元素。

答案
class DynamicArrayList:
    def __init__(self):
        self.data = []

    def remove_odd_pos(self):
        """删除所有奇数位序的元素,位序从1开始"""
        j = 0   # 新数组写入位置
        n = len(self.data)
        for i in range(n):
            # i下标,位序 i+1;保留位序为偶数
            if (i + 1) % 2 == 0:
                self.data[j] = self.data[i]
                j += 1
        # 截断列表,新长度j
        self.data = self.data[:j]

题目信息

题号:8225
题型:简答题
知识点:Python
难度:普通