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

Posted tlz888

tags:

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

数据结构和算法各是指什么?作用是什么? 具体有哪些数据结构,又有哪些算法?

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

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

常见数据结构有:数组(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)等,一个比一个高阶。

 

以上是关于数据结构与算法之--基本概念的主要内容,如果未能解决你的问题,请参考以下文章

计算机软考笔记之《数据结构与算法》

数据结构与算法之-二分查找

数据挖掘十大算法之AdaBoost提升算法

发现数据结构与算法之美的第n次重新学习 ——— 初遇数据结构与算法(了解)

数据挖掘十大算法之SVM支持向量机分类算法

数据结构与算法学习笔记:数据结构基本概念