Python - 数据结构之数组

  • 简述

    数组是一个容器,可以容纳固定数量的项目,这些项目应该是相同的类型。大多数数据结构都使用数组来实现它们的算法。以下是理解数组概念的重要术语如下 -
    • 元素− 存储在数组中的每个项目称为一个元素。
    • 索引− 数组中元素的每个位置都有一个数字索引,用于标识该元素。
  • 数组表示

    数组可以用不同的语言以各种方式声明。下面是一个插图。
    数组声明 数组表示
    根据上图,以下是要考虑的要点 -
    • 索引从 0 开始。
    • 数组长度为 10,这意味着它可以存储 10 个元素。
    • 每个元素都可以通过其索引访问。例如,我们可以将索引 6 处的元素设为 9。
  • 基本操作

    数组支持的基本操作如下所述 -
    • Traverse− 一个一个打印所有数组元素。
    • Insertion− 在给定索引处添加一个元素。
    • Deletion− 删除给定索引处的元素。
    • Search− 使用给定索引或按值搜索元素。
    • Update− 更新给定索引处的元素。
    数组是在 Python 中通过将数组模块导入 python 程序来创建的。然后,数组声明如下 -
    
    from array import *
    
    arrayName = array(typecode, [Initializers])
    
    类型代码是用于定义数组将保存的值类型的代码。使用的一些常见类型代码如下 -
    类型代码 价值
    b 表示大小为 1 字节的有符号整数
    B 表示大小为 1 字节的无符号整数
    c 表示大小为 1 字节的字符
    i 表示大小为 2 字节的有符号整数
    I 表示大小为 2 个字节的无符号整数
    f 表示大小为 4 字节的浮点数
    d 表示大小为 8 字节的浮点数
    在查看各种数组操作之前,让我们使用 python 创建和打印一个数组。

    例子

    下面的代码创建了一个名为array1.
    
    from array import *
    
    array1 = array('i', [10,20,30,40,50])
    
    for x in array1:
       print(x)
    

    输出

    当我们编译并执行上述程序时,它会产生以下结果 -
    
    10
    20
    30
    40
    50
    
  • 访问数组元素

    我们可以使用元素的索引来访问数组的每个元素。下面的代码显示了如何访问数组元素。

    例子

    
    from array import *
    
    array1 = array('i', [10,20,30,40,50])
    
    print (array1[0])
    
    print (array1[2])
    

    输出

    当我们编译并执行上述程序时,它会产生以下结果,表明元素被插入到索引位置 1。
    
    10
    30
    
  • 插入操作

    插入操作是将一个或多个数据元素插入到一个数组中。根据要求,可以在数组的开头、结尾或任何给定索引处添加新元素。

    例子

    在这里,我们使用 python 内置的 insert() 方法在数组的中间添加一个数据元素。
    
    from array import *
    
    array1 = array('i', [10,20,30,40,50])
    
    array1.insert(1,60)
    
    for x in array1:
       print(x)
    
    当我们编译并执行上述程序时,它会产生以下结果,表明元素被插入到索引位置 1。

    输出

    
    10
    60
    20
    30
    40
    50
    
  • 删除操作

    删除是指从数组中删除现有元素并重新组织数组的所有元素。

    例子

    在这里,我们使用 python 内置的 remove() 方法删除数组中间的一个数据元素。
    
    from array import *
    
    array1 = array('i', [10,20,30,40,50])
    
    array1.remove(40)
    
    for x in array1:
       print(x)
    

    输出

    当我们编译并执行上述程序时,它会产生以下结果,表明元素已从数组中删除。
    
    10
    20
    30
    50
    
  • 搜索操作

    您可以根据数组元素的值或其索引执行搜索。

    例子

    在这里,我们使用 python 内置的 index() 方法搜索数据元素。
    
    from array import *
    
    array1 = array('i', [10,20,30,40,50])
    
    print (array1.index(40))
    

    输出

    当我们编译并执行上述程序时,它会产生以下结果,显示元素的索引。如果数组中不存在该值,则程序将返回错误。
    
    3
    
  • 更新操作

    更新操作是指在给定索引处更新数组中的现有元素。

    例子

    在这里,我们只需将一个新值重新分配给我们想要更新的所需索引。
    
    from array import *
    
    array1 = array('i', [10,20,30,40,50])
    
    array1[2] = 80
    
    for x in array1:
       print(x)
    

    输出

    当我们编译并执行上述程序时,它会产生以下结果,显示索引位置 2 处的新值。
    
    10
    20
    80
    40
    50