在 Python 字典中,每个键和值均以冒号分隔 (:),每个条目以逗号分隔 (,) 。完整的字典条目包含在大括号中。没有条目的空字典用两个大括号编写如下:{}。 键在字典中是唯一的,而值可能不唯一。字典的值可以是任何类型,但键必须是不可变...
二维数组是数组中的数组。它是一个数组的数组。在这种类型的数组中,数据元素的位置由两个索引而不是一个索引引用。因此它代表一个包含行和列数据的表。在下面的二维数组示例中,每个数组元素本身就是一个数组。 考虑每天记录温度 4 次的示例。记录仪器有...
矩阵是二维数组的特例,其中每个数据元素的大小相同。因此,每个矩阵也是一个二维数组,但反之则不然。矩阵是许多数学和科学计算中非常重要的数据结构。正如我们在上一章中讨论了二维数组的结构一样,本章我们将重点讨论特定数据矩阵结构的操作。 还可以使用...
在数学上,集合是一组不按特定顺序排列的数据项。 Python 集与此数学定义类似,但具有以下附加条件。 集合中的元素不能重复。 集合中的元素是不可变的(无法更改),但集合作为一个整体是可变的。 添加到 Python 集合中的每个元素都不需...
在某些情况下,无法在连续的内存块中找到用于存储数据的内存分配。因此,请借助包含数据的指针和数据元素旁边的位置的地址。所以下一个数据项的地址是由当前数据项的值决定的。通常这样的系统称为索引。但在 Python 中它们被称为节点。 节点是Py...
链表是一组链接的数据元素。每个数据项都以指针的形式与另一个项存在关系。 Python 没有标准库的链表。我们使用上一章讨论的节点概念来实现链表概念。我们已经知道如何创建节点类以及如何操作节点元素。在本章中,您将了解一种类型的链表:单链表。在...
在英语词典中,堆栈(Stack)的意思是将一个对象放在另一个对象之上。该数据结构中分配内存的方式是相同的。它存储数据元素的方式与厨房中一堆盘子类似:一个放在另一个上面。因此,启用操作的堆栈数据的末尾可以称为堆栈顶部。元素可以添加到堆栈顶部...
在日常生活中,当您等待服务时,您就会熟悉队列。队列数据结构也意味着数据元素排列在队列中。队列的独特性在于添加和删除元素的方式。这些物品可以放置在一端,但可以从另一端移除。所以这是先进先出的方法。队列可以使用 python list 实现,...
Deque(或双端队列)具有从两端添加和删除元素的功能。 Deque 模块是集合库的一部分。它具有添加和删除元素的方法,可以直接使用参数调用。在以下程序中,导入模块collection并声明双端队列。不需要任何类,只需使用这些方法的内置实...
另一种可以通过来回遍历的链表。这种类型的链表称为双向链表。以下是双向链表的属性。 双向链表包含第一个和最后一个链接元素。 每个链接都有一个数据字段和两个名为 next 和 prev 的链接字段。 每个链接都使用下一个链接链接到下一个链接。...