数据结构
来源:互联网 发布:java web开发实例大全 编辑:程序博客网 时间:2024/06/12 22:00
第一章 绪论
一 数据结构:
1、数据结构的基本概念:
(1)数据元素:数据(信息的载体)的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
(2)数据项:数据元素的最小单位,能独立、完整地描述问题世界的一切实体。
(3)数据结构:相互之间存在一定关系的数据元素的集合。有逻辑结构和存储结构。
(4)抽象数据类型(ADT):是一个数据结构以及定义在该结构上的一组操作的总称。
(5)数据类型和ADT的区别:前者指高级程序设计语音支持的基本数据类型,后者指自定义的数据类型。
2、逻辑结构:
(1)逻辑结构:数据元素之间逻辑关系的整体。形式上可定义为一个二元组:Data_Structure=(D,R)
(2)据元素间逻辑关系的不同,数据结构还可分为四类:1 集合:数据元素之间就是“属于同一个集合”。2 线性结构:数据元素之间存在着一对一的线性关系。3 树结构:数据元素之间存在着一对多的层次关系。4 图结构:数据元素之间存在着多对多的任意关系。
(3) 描述方法:逻辑关系图,数据元素用圆圈表示,“O”;元素之间的逻辑关系用连线表示,“——”;如果强调关系的方向性,用带箭头的连线表示,"——>".
3、存储结构:
(1)存储结构(物理结构):存储数据元素;隐式或显式地方法数据元素之间的逻辑关系。
(2) 两种存储结构:顺序存储结构和链接存储结构。
(3)顺序存储结构:用一组连续的存储单元依次存储数据元素,数据元素之间的逻辑关系由元素的存储位置来表示。
(4)链接存储结构:用一组任意的存储单元存储数据元素,数据元素之间的逻辑关系用指针来表示。
二 算法
1、算法的基本概念
(1)算法:对特定问题求解步骤的一种描述,是指令的有限序列。
(2) 算法的5个重要特性:1、输入2、输出3、有穷性4、确定性5、可行性。
(3)好算法的五大特性:1、正确性 2、鲁棒性3、简单性4、抽象分级5、高效性。
(4)算法的描述方法:1、自然语言2、流程图3、程序设计语言4、伪代码。
2、算法分析
(1)度量算法效率的方法:1、事后统计(先将算法实现,然后输入适当的数据运行,测算其时间和空间开销)2、事前分析估算(渐进复杂度)。
(2)问题规模:指输入量的多少,一般记做“T(n)”。
(3)基本语句:执行次数与整个算法的执行次数成正比的语句,是算法中最重要的操作。
(4)时间复杂度(渐进时间复杂度):当问题规模充分大时,算法中基本语句的执行次数在渐近意义下的阶。通常用大O(大欧)记号表示。
(5)算法的时间复杂度:找出所有执行次数最大的那条语句作为基本语句,计算基本语句的执行次数,取其数量级放入大O中。
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 深入Java单例模式
- Ambari User Guide
- C++中整数和字符/字符串的转换
- 刚开通博客,希望对自己有所帮助吧
- pDc->SelectObject(pOldBrush)恢复画刷
- 数据结构
- 在iOS应用中从竖屏模式强制转换为横屏模式
- HDU-5000 Clone 鞍山网络赛D题 DP+猜想
- shell
- JavaSE学习第一天笔记
- hdoj 2100 Lovekey 【另类A+B】
- windows下vc6.0下的OpeSSL编译过程中的问题
- linux中文编码问题
- 寻找svn资料时得到的一个网址