您的位置:首页 > 理论基础 > 数据结构算法

数据结构与算法之--基本概念

2017-07-08 16:44 309 查看
数据结构和算法各是指什么?作用是什么? 具体有哪些数据结构,又有哪些算法?

  数据结构是数据在计算机内存或者外存中的组织方式,算法就是计算机操作数据结构中数据的方式方法,比如查找、排序。

很少有数据结构是为了节省存储空间的,数据结构和算法的常见目的都集中与提高数据操作的速度上。

常见数据结构有:数组(Arrays),链表(Linked List),栈(Stack),队列(Queue),二叉树(Binary Tree),哈希表(Hash Table),图(Graph)等,

常见算法:查找,排序。

算法性能的评价方式:时间复杂度与空间复杂度、大O表示法

  算法的时间复杂度和空间复杂度分别表示,随着数据量N的增加,算法需要的时间和存储空间开销的增长趋势。

大O表示法是为了量化这种复杂度的增长趋势,从而方便地区分算法的性能。关于大O表示法,让我联想起,

在高等数学中,同阶无穷小的含义,具体是这样的:

  若当自变量x->0(或者无穷)时,函数f(x)和g(x):f(x)/g(x)=Constant。

类似的,在算法复杂度的评价上,若有一数据集,其数据量N->无穷时,两种算法的时间复杂度AF(N)/AG(N)=Constant,

就说两种算法在时间开销的增长趋势是同阶的,记为:AF=O(AG)。

常见的算法复杂度有:

O(1), O(logN), O(N), O(N*logN), O(N^2), O(2^N)等,一个比一个高阶。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: