📝 Python数据结构教程

34篇技术文档
  Python算法类型

📅  最后修改于: 2020-11-07 08:43:11        🧑  作者: Mango

必须分析算法的效率和准确性以进行比较,并针对某些情况选择特定的算法。进行此分析的过程称为渐近分析。它是指以数学计算单位计算任何操作的运行时间。例如,一个操作的运行时间计算为f(n),而对于另一操作,它的运行时间计算为g(n2)。这意味着第一操作的运行时间将随着n的增加线性增加,而第二操作的运行时间将随着n的增加呈指数增长。同样,如果n很小,则两个操作的运行时间将几乎相同。通常,算法所需的时间分为以...

  Python算法类

📅  最后修改于: 2020-11-07 08:43:31        🧑  作者: Mango

算法是明确的步骤,应该通过处理零个或多个输入为我们提供定义明确的输出。这导致了设计和编写算法的许多方法。已经观察到,大多数算法可以分为以下几类。贪婪算法贪婪算法试图找到局部最优解,最终可能导致全局最优解。但是,通常,贪心算法不会提供全局优化的解决方案。因此,贪婪的算法会在那个时候寻找一个简单的解决方案,而不考虑它如何影响未来的步骤。这类似于人类如何解决问题而无需遍历提供的输入的完整细节。大多数联网...

  Python摊销分析

📅  最后修改于: 2020-11-07 08:43:48        🧑  作者: Mango

摊销分析涉及估计程序中操作序列的运行时间,而不考虑输入值中数据分布的跨度。一个简单的示例是在排序列表中查找值比在未排序列表中查找值更快。如果列表已经排序,则数据的分布无关紧要。但是,当然,列表的长度会产生影响,因为它决定了算法获得最终结果所必须经过的步骤数。因此,我们可以看到,如果获得排序列表的单个步骤的初始成本很高,那么后续查找元素的步骤的成本就会大大降低。因此,摊销分析有助于我们确定一系列操作...

  Python算法论证

📅  最后修改于: 2020-11-07 08:44:05        🧑  作者: Mango

为了断言算法是有效的,我们需要一些数学工具作为证明。这些工具可帮助我们对算法的性能和准确性提供数学上令人满意的解释。以下是一些数学工具的列表,可用于证明一种算法优于另一种算法。直接证明:它是通过使用直接计算来直接验证语句。例如,两个偶数之和始终是偶数。在这种情况下,只需将要调查的两个数字相加,并验证结果是否为偶数。归纳证明:在这里,我们从真相的特定实例开始,然后将其概括为真相的所有可能值。方法是采...