数据结构与算法分析绪论

Posted _Doing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构与算法分析绪论相关的知识,希望对你有一定的参考价值。

 
数据结构+算法=程序

逻辑结构:集合、线性、树、图
物理结构顺序、链式


 
算法分析:
  • (渐进)时间复杂度
基本语句的执行次数(基本语句:执行次数与整个算法执行次数成正比的语句,通常是最内层循环的循环体)
  1. 非递归找执行次数最大的基本语句放入大O
  2. 递归:(迭代法)可迭代的展开方程的右边,直到没有可以迭代的项为止,这时通过对右边的和进行估算来估计方程的解http://www.cnblogs.com/python27/archive/2011/12/09/2282486.html
 
最好情况、最坏情况、平均情况(概率)
 
常见时间复杂度:
 
  • (渐进)空间复杂度
算法执行时临时开辟的辅助空间
 
Big O Complexity Graph
 

关于时间与空间复杂度A)ACM的一些注意点:
  • 时间复杂度
重要的事实:当代计算机1s内可做10^7左右次计算;配置好的机器可到k*10^7~10^8。
在这个限制下时间复杂度一定的算法存在能处理的规模上限:
  • 空间复杂度
当代32位PC上空间最大限制一般是10^7Byte≈10MB,比如你可以开几个大小为10^6的整型数组: int A[10^6]; 开更大的数组,比如A[10^7]一般会遇到Memory Limit Exceed; 即使不超内存根据前面的运算次数限制可知时间复杂度也不会好:
空间复杂度(两种常见空间溢出错误):
1、栈溢出(递归程序):递归程序很常见;大多数情况下你不必担心栈溢出的问题
2、在函数里面开很大的数组:解决方案 开成全局数组
 
 
 
 





以上是关于数据结构与算法分析绪论的主要内容,如果未能解决你的问题,请参考以下文章

考研数据结构与算法绪论

数据结构与算法绪论

数据结构与算法之绪论

[数据结构]绪论

数据结构与算法—绪论

小猪的数据结构辅助教程——1.数据结构与算法绪论