数据结构

发布于:2024-12-06T05:13:00.000000Z

学习人数:0

知识点:455

更新于:2024-12-06T05:13:39.000000Z

基本概念和术语

算法和算法分析

重要程度:9 分
<div> <h2>算法</h2> <p><strong>定义:</strong>算法是一组有穷的规则,它们规定了解决某一特定类型问题的一个运算或运算序列。</p> <ul> <li>输入:一个算法必须至少有一个输入。</li> <li>输出:一个算法必须至少有一个输出。</li> <li>确定性:算法中的每一步都必须是有明确定义的。</li> <li>有限性:算法必须在执行有限步骤后结束。</li> <li>可行性:算法中的每一步都必须是可行的,即能够在有限时间内完成。</li> </ul> <h3>例题:</h3> <p>编写一个算法来计算两个数的和。</p> <pre> <code> 算法 Sum(a, b) 输入: 两个数 a 和 b 输出: a 和 b 的和 1. 初始化 sum = a + b 2. 返回 sum </code> </pre> </div> <div> <h2>算法分析</h2> <p><strong>时间复杂度:</strong>用来衡量算法运行时间与问题规模之间的关系。</p> <p><strong>空间复杂度:</strong>用来衡量算法运行时所需要的存储空间与问题规模之间的关系。</p> <h3>时间复杂度举例:</h3> <p>分析以下算法的时间复杂度。</p> <pre> <code> 算法 Example(n) 输入: 一个整数 n 输出: 无 1. for i from 1 to n do 2. print i </code> </pre> <p><strong>分析:</strong>该算法执行了n次循环,每次循环中执行的操作是常数时间,因此该算法的时间复杂度为O(n)。</p> </div>
上一条