📚 AQA Maths: Algorithm Essentials | AQA 数学:算法 考点精讲
Algorithms form the backbone of decision mathematics in the AQA specification, equipping students with systematic, step-by-step procedures for solving a wide range of problems. From sorting data efficiently to finding the shortest path in a network, a solid grasp of algorithmic thinking is essential for tackling exam questions with confidence and precision.
算法是 AQA 考纲中决策数学的支柱,它为学生提供了一套系统、逐步解决问题的步骤。无论是高效排序数据,还是在网络中找到最短路径,扎实掌握算法思维都是自信、精准应对考试题目的基础。
1. What is an Algorithm? | 什么是算法?
An algorithm is a finite sequence of well-defined, unambiguous instructions designed to solve a specific problem or perform a computation. In AQA Decision Maths, algorithms are typically presented using pseudocode or flowcharts, and they must terminate after a finite number of steps. The key properties include input, output, definiteness, finiteness, and effectiveness. Understanding these fundamentals helps you follow and trace algorithms accurately under timed conditions.
算法是一系列明确、无歧义的有限指令,旨在解决特定问题或完成计算。在 AQA 决策数学中,算法通常用伪代码或流程图呈现,并且必须在有限步后终止。算法的关键特性包括输入、输出、确定性、有限性和有效性。理解这些基础知识有助于你在限时考试中准确地循迹和跟踪算法。
2. Representing Algorithms: Pseudocode and Flowcharts | 算法的表示:伪代码与流程图
Algorithms can be expressed in pseudocode – a structured, English-like notation that closely resembles the style used in exam questions. Flowcharts use standardized symbols such as ovals for start/end, rectangles for processes, diamonds for decisions, and parallelograms for input/output. When tracing an algorithm, you must carefully update variables and follow decision branches, often keeping a trace table to record the values at each stage.
算法可以用伪代码表达——一种结构化的、类似英语的表示法,与考题风格非常接近。流程图使用标准化符号:椭圆代表开始/结束,矩形代表处理步骤,菱形代表判断,平行四边形代表输入/输出。在循迹算法时,你需要仔细更新变量并沿着判断分支执行,通常需要制作追踪表来记录每一步的数值。
3. Sorting Algorithms: Bubble Sort | 排序算法:冒泡排序
The bubble sort algorithm works by repeatedly stepping through a list, comparing adjacent pairs of items and swapping them if they are in the wrong order. Each pass places the next largest element into its correct position. For a list of n items, the worst-case number of comparisons is n(n – 1)/2, and the algorithm has a time complexity of O(n²). You may be asked to write pseudocode, complete a trace table, or count the number of swaps and comparisons.
冒泡排序算法通过反复遍历列表、比较相邻元素并在顺序错误时交换它们来工作。每一趟都会把下一个最大的元素放到其正确位置。对于一个包含 n 个元素的列表,最坏情况下的比较次数为 n(n – 1)/2,时间复杂度为 O(n²)。考试中可能要求编写伪代码、完成追踪表,或统计交换和比较的次数。
4. Sorting Algorithms: Quick Sort | 排序算法:快速排序
Quick sort selects a pivot element from the list and partitions the remaining items into two sub-lists: those less than the pivot and those greater than the pivot. The process is then applied recursively to the sub-lists until the base case of an empty or single-item list is reached. You must be able to perform a quick sort by hand, showing the intermediate sub-lists clearly. The average-case complexity is O(n log n), but a poor choice of pivot can lead to O(n²).
快速排序从列表中选取一个枢轴元素,然后将剩余元素划分为两个子列表:小于枢轴的数和大于枢轴的数。之后对该子列表递归应用此过程,直到出现空列表或只有一个元素的基准情况。你必须能够手动执行快速排序,并清楚地展示中间子列表。其平均时间复杂度为 O(n log n),但糟糕的枢轴选择可能导致 O(n²)。
5. Binary Search | 二分查找
Binary search is a highly efficient algorithm for locating a target value in a sorted list. It repeatedly divides the search interval in half: if the middle element is not the target, the search continues in the lower or upper half depending on the comparison. The maximum number of comparisons is log₂n + 1. On the AQA paper, you may need to trace a binary search, describe the termination conditions, or compare its efficiency with linear search.
二分查找是一种在已排序列表中定位目标值的高效算法。它反复将搜索区间对半分:如果中间元素不是目标值,则根据大小比较继续在下半区或上半区搜索。最大比较次数为 log₂n + 1。在 AQA 试卷中,你可能需要循迹二分查找过程、描述终止条件,或比较它与顺序查找的效率。
6. Graph Theory: Minimum Spanning Trees – Prim’s Algorithm | 图论:最小生成树 – Prim 算法
Prim’s algorithm builds a minimum spanning tree (MST) from a starting vertex by growing a tree one edge at a time. At each step, you select the edge of least weight that connects a vertex already in the tree to a vertex not yet in the tree. You can implement it using a matrix (network table) or by drawing a graph. Exam questions typically require you to display the order of edge selection and state the total weight of the MST.
Prim 算法从一个起始顶点出发构建最小生成树,每次增添一条边。每一步,选择权重最小的边,该边连接树内一个顶点与树外一个顶点。你可以使用矩阵(网络表格)或通过画图来实现。考试题目通常要求你展示边的选取顺序并给出最小生成树的总权重。
7. Graph Theory: Kruskal’s Algorithm | 图论:Kruskal 算法
Kruskal’s algorithm finds an MST by sorting all edges in ascending order of weight and adding them one by one, provided they do not form a cycle. To cycle-check, you must keep track of connected components. This algorithm is particularly convenient when presented with a list of edges and weights. You should be prepared to write an ordered list of selected edges and demonstrate that you understand the forest-growing process.
Kruskal 算法通过对所有边按权重升序排序,然后逐个加入那些不会形成环的边来构建最小生成树。为了检测环,你需要跟踪各个连通分量。当题目以边及其权重的列表形式呈现时,该算法尤其方便。你应该准备好写出所选取边的有序列表,并表明理解森林的生长过程。
8. Shortest Path: Dijkstra’s Algorithm | 最短路径:Dijkstra 算法
Dijkstra’s algorithm finds the shortest path from a start node to all other nodes in a weighted graph with non-negative weights. It uses temporary labels that get permanently fixed when the smallest temporary value is selected. The algorithm builds a path tree and records the preceding vertex for each node, allowing you to trace back the route. Exam tasks often involve completing a labelling box table and writing the final path with its length.
Dijkstra 算法可以在非负权重的图中找出从起始节点到所有其他节点的最短路径。它使用临时标签,当最小的临时值被选中时即成为永久标签。算法构建一条路径树并记录每个节点的前驱顶点,从而使你能够回溯整条路线。考试任务通常包括完成标签框表格并写出最终路径及其长度。
9. Algorithm Complexity and Big O Notation | 算法复杂度和 Big O 记号
The efficiency of an algorithm is measured by its time complexity, commonly expressed using Big O notation. For example, bubble sort runs in O(n²), quick sort average is O(n log n), and Dijkstra with a simple implementation is O(n²). Understanding orders of magnitude helps you compare algorithms and justify choices. AQA expects you to interpret given Big O expressions and relate them to the number of operations as input size grows.
算法的效率由其时间复杂度衡量,通常使用 Big O 记号表示。例如,冒泡排序的时间复杂度为 O(n²),快速排序平均为 O(n log n),而简单实现的 Dijkstra 算法为 O(n²)。理解数量级有助于你比较算法并证明选择的合理性。AQA 要求你能够解读给定的 Big O 表达式,并将其与输入规模增长时的操作次数联系起来。
10. Tackling Algorithmic Exam Questions Efficiently | 高效应对算法考题
In the exam, always read the algorithm description carefully and decide whether to trace it line by line or apply a known procedure. Use clear, well-organized trace tables with column headings for variables and outputs. When drawing or modifying graphs, label vertices and edges neatly. Show all working – even if you get the final MST weight correct, intermediate steps often carry marks. Practise past papers to become fluent in the specific notation and style required by AQA.
考试时,务必仔细阅读算法描述,决定是逐行循迹还是套用已知步骤。使用清晰、条理分明的追踪表,并为变量和输出加上列标题。在绘制或修改图时,要工整地标注顶点和边。展示全部解题过程——即使最终最小生成树总权重正确,中间步骤也常常赋分。通过练习历年真题,熟悉 AQA 要求的特定符号和风格。
Published by TutorHao | Mathematics Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)
屏轩国际教育cambridge primary/secondary checkpoint, cat4, ukiset,ukcat,igcse,alevel,PAT,STEP,MAT, ibdp,ap,ssat,sat,sat2课程辅导,国外大学本科硕士研究生博士课程论文辅导