学习指南

单元总览

数据类型与结构

CIE A-Level 计算机科学· 5 分钟阅读 📊 n/a

1. 单元概览

本单元从最基础的数据构建块(原始类型)开始,逐步讲解用于解决实际计算问题的越来越复杂的复合结构。我们首先介绍基础线性结构,然后转向可对数据间更复杂关系建模的非线性结构。

掌握本主题对编写高效代码、解答整个CIE 9618考纲中的问题求解题目至关重要。数据结构的选择会直接影响你实现的任何算法的效率。

2. 常见陷阱

错误做法:

混淆栈和队列的操作顺序

原因:

混淆LIFO和FIFO会导致表达式求值等常见问题的解决方案出错。

正确做法:

记住:栈 = 后进先出(就像一摞盘子),队列 = 先进先出(就像结账排队)。

错误做法:

不权衡利弊就选择数据结构

原因:

数组访问快但插入慢,链表则相反,这会导致解决方案效率低下。

正确做法:

选择数据结构前,务必确认你最常执行的操作是什么。

错误做法:

将所有数据结构都视为线性结构

原因:

对树和图的错误分类会导致遍历逻辑和性质解答出错。

正确做法:

分析数据结构的特性时,务必先将其分类为线性或非线性。

3. 速查表

概念

核心规则 / 定义

原始数据类型

原子单值类型:整数、浮点数、布尔值、字符

静态数组访问

任意元素的随机访问时间复杂度为

链表插入

已知节点处的插入/删除时间复杂度为

栈的性质

遵循后进先出(LIFO)访问顺序

队列的性质

遵循先进先出(FIFO)访问顺序

二叉树规则

每个节点最多可拥有2个子节点(左和右)

图的存储

通常存储为邻接矩阵或邻接表

哈希表平均查找

平均情况下键查找的时间复杂度为

记录定义

存储多个异构相关字段的复合类型

下一步

从本单元的第一个子主题开始学习,它讲解原始数据类型——这是你在本单元将学到的所有其他数据结构的基础构建块。完成这里所有子主题后,就可以进入下一单元(算法),学习这些数据结构如何用于解决常见计算问题。