首页 > 编程语言 > 详细

数据结构,算法,算法时间复杂度

时间:2017-01-07 20:52:41      阅读:226      评论:0      收藏:0      [点我收藏+]

数据结构:

从逻辑上讲,常见的数据结构有,集合,线性,树和图。

存放这些元素的有顺序存储和链式存储。

集合和线性,这2种数据结构,必须是放到内存或文件中,一般是希望按某种规则能查找到集合内的元素。所以个人认为,集合基本狭义上可以认为是线性结构。一个函数内,散布的变量,可以看作集合,但研究他们有什么意义呢?

只有编译器才需要研究他们。研究他们就要放到一起。对程序员来说,函数内无关系的变量们是一个集合,但是对编译器来说。函数内无关系的变量们是一个线性结构。

1)线性的元素是一对一关系。

2)树的元素是一对多关系。

3)图的元素是多对多关系。

 

顺序存储。明显查询快速。但是插入就很不方便。要扩大空间,和移动数据。所以基本适用固定大小,且少插入动作,只是查询和修改。

链式存储,查询慢,但是插入快速。适合不固定大小,频繁插入的情况

 

一,线性基本存储了下一个元素地址。一般是链式存储。如果是固定大小,又不插入。那根本不需要线性了。用集合就好了。

 

二,树,节点从逻辑上要保存子树的地址,从逻辑上都已经实现了链式存储。所以一般没有必要顺序存储。

三。图也是一样。从逻辑上保存了其他元素的地址。已经实现了链式存储。没有必要顺序存储。

数据结构,算法,算法时间复杂度

原文:http://www.cnblogs.com/lsfv/p/6260215.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!