mirror of
https://github.com/krahets/hello-algo.git
synced 2025-11-02 12:58:42 +08:00
Polish the chapter of array and linkedlist
This commit is contained in:
@ -7,10 +7,10 @@
|
||||
|
||||
因此在能够解决问题的前提下,算法效率成为主要的评价维度,包括:
|
||||
|
||||
- **时间效率**,即算法运行速度的快慢。
|
||||
- **空间效率**,即算法占用内存空间的大小。
|
||||
- **时间效率**:算法运行速度的快慢。
|
||||
- **空间效率**:算法占用内存空间的大小。
|
||||
|
||||
简而言之,**我们的目标是设计“既快又省”的数据结构与算法**。而有效地评估算法效率至关重要,因为只有了解评价标准,我们才能对比分析各种算法,从而指导算法设计与优化过程。
|
||||
简而言之,**我们的目标是设计“既快又省”的数据结构与算法**。而有效地评估算法效率至关重要,因为只有这样我们才能将各种算法进行对比,从而指导算法设计与优化过程。
|
||||
|
||||
效率评估方法主要分为两种:实际测试和理论估算。
|
||||
|
||||
@ -28,11 +28,11 @@
|
||||
|
||||
**复杂度分析评估的是算法运行效率随着输入数据量增多时的增长趋势**。这个定义有些拗口,我们可以将其分为三个重点来理解:
|
||||
|
||||
- “算法运行效率”可分为运行时间和占用空间两部分,与之对应地,复杂度可分为「时间复杂度 Time Complexity」和「空间复杂度 Space Complexity」。
|
||||
- “随着输入数据量增多时”表示复杂度与输入数据量有关,反映了算法运行效率与输入数据量之间的关系。
|
||||
- “增长趋势”表示复杂度分析关注的是算法时间与空间的增长趋势,而非具体的运行时间或占用空间。
|
||||
1. “算法运行效率”可分为运行时间和占用空间两部分,与之对应地,复杂度可分为「时间复杂度 Time Complexity」和「空间复杂度 Space Complexity」。
|
||||
2. “随着输入数据量增多时”意味着复杂度反映了算法运行效率与输入数据量之间的关系。
|
||||
3. “增长趋势”表示复杂度分析关注的是算法时间与空间的增长趋势,而非具体的运行时间或占用空间。
|
||||
|
||||
**复杂度分析克服了实际测试方法的弊端**。首先,它独立于测试环境,因此分析结果适用于所有运行平台。其次,它可以体现不同数据量下的算法效率,尤其是在大数据量下的算法性能。
|
||||
**复杂度分析克服了实际测试方法的弊端**。首先,它独立于测试环境,分析结果适用于所有运行平台。其次,它可以体现不同数据量下的算法效率,尤其是在大数据量下的算法性能。
|
||||
|
||||
如果你对复杂度分析的概念仍感到困惑,无需担心,我们会在后续章节详细介绍。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user