首页 > 编程知识 正文

数据结构时间复杂度例题详解,数据结构怎么看时间复杂度

时间:2023-05-04 03:00:28 阅读:24750 作者:4762

数据结构时间复杂度代码优化效率优化目标:测量程序运行的效率时间复杂度空间复杂度。 如果着眼于时间或空间消耗与输入数据量之间的关系,将计算方法的复杂度与具体常数系数无关的多项式级复杂度相加,则选择较高的一方作为结果o(1) o(1) o(1) o(1)也表示特殊复杂度。 与输入数据量n n n无关的复杂度与程序的关系时间复杂度和代码结构高度相关的一个顺序结构的代码,时间复杂度为o(1) o(1) o ) o ) 2分割搜索,采用2分割策略。 时间复杂度是o(logn ) o(logn ) o(logn )的简单for循环,时间复杂度是o ) n ) o ) n ) o ) n )嵌套for循环,时间复杂度是o (n ) o ) n ) 代码任务的开发在没有时间和空间限制的情况下完成。 步骤2 :操作处理无效。 排除代码中无效的计算、无效的存储,降低时间和空间的复杂性。 第三步:时空转换。 设计合理的数据结构,完成从时间复杂度到空间复杂度的过渡。 数据处理的基本操作:添加/删除前提:为了充分利用数据结构,首先需要明确数据在代码中处理和加工的最小单位的行为,即数据结构的基本操作。

相对于代码对数据的处理(操作性的类型少),数据处理的操作是指找出应该处理的数据,计算结果并保存即可。 总结如下。

找到要处理的数据。 这是按照一定的条件去找。 将结果保存到新的内存空间。 这是添加到现有数据中。 将结果保存到已使用的内存区域。 这需要在添加新数据之前删除内存区域中的现有数据。 基于对数据处理操作的分析,所有代码处理数据的也只有这三个基本操作(添加/删除),如何分析以找到解决问题的最佳方案呢?

首先,这段代码对数据执行了什么操作? 其次,这些操作中,哪个操作影响效率最大,对时间复杂性的损失最大? 最后,哪个数据结构对提高数据操作效率最有帮助? 数据结构的时间复杂性

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。