Python 中的列表与数组

在 Python 中,列表是内置的动态数组数据结构。

列表具有以下特性:

  • 元素有序排列
  • 内容可修改
  • 可存储不同类型元素

列表

列表是 Python 内置的数据结构,用于存储多个元素。

列表被广泛应用于各类算法中。

创建列表

使用方括号 [] 创建列表:

实例

# 空列表
x = []

# 带有初始值的列表
y = [1, 2, 3, 4, 5]

# 包含混合类型的列表
z = [1, "hello", 3.14, True]

亲自试一试

列表方法

Python 列表提供多种内置方法,可执行添加、排序等常见操作。

实例

向列表追加元素并按升序排序:

x = [9, 12, 7, 4, 11]

# 添加元素
x.append(8)

# 将列表按升序排序
x.sort()

亲自试一试

自定义算法

当需要实现Python未内置的功能时,我们可以创建自定义算法。

例如创建查找列表最小值的算法:

实例

创建算法来查找列表中的最小值:

my_array = [7, 12, 9, 4, 11, 8]
minVal = my_array[0]

for i in my_array:
  if i < minVal:
    minVal = i

print('Lowest value:', minVal)

亲自试一试

该算法简单高效,适用于小型数据集。但处理大规模数据时,任何算法都需要考虑执行时间,这就引出了优化的重要性。

算法优化是算法开发的核心环节,也是数据结构与算法编程的关键部分。

时间复杂度分析

运行时间评估

研究算法时,我们常关注算法执行时间与数据规模的关系。

上述示例中,算法执行时间与数据规模呈线性关系。因为算法需要遍历每个元素来寻找最小值。当数组包含 5 个元素时循环执行5次,若包含 1000 个元素则需执行 1000 次。

可通过下方模拟演示查找最小值所需的比较操作次数与数组大小的关系。

本教程介绍的每个算法都会标注其时间复杂度特征。