第一章 绪论

“数据结构”是介于数学、计算机硬件和计算机软件三者之间的一门核心课程

数据(data)是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。

数据元素(data element)是数据的基本单位,在计算机程序中痛处作为一个整体进行考虑和处理。数据项是数据的不可分割的最小单位。

数据对象(data object) 是性质相同的数据元素的集合,是数据的一个子集。

数据结构(data structure) 是相互之间存在一种或多种特点关系的数据元素的集合。

基本结构: 集合——结构中的数据元素之间除了“同属于一个集合”的关系外,别无其他关系;

线性结构——结构中的数据元素之间存在一个对一个的关系;

树形结构——结构中的数据元素之间存在一个对多个的关系;

图状结构或网状结构——结构中的数据元素之间存在多个对多个的关系。

结构定义中的“关系”描述的是数据元素之间的逻辑关系,称为数据的逻辑结构;数据结构在计算机中的表示(映像)称为数据的物理结构,又称为存储结构。

一个含有抽象数据类型的软件模块通常应包含定义、表示和实现3个部分。抽象数据类型的定义由一个值域和定义在该值域上的一组操作组成。按其值得不同特性可细分为:

原子类型 atomic data type 属原子类型的变量的值是不可分解的。

固定聚合类型 fixed-aggregate data type 属该类型的变量,其值由确定数目的称为按某种结构组成;

可变聚合类型 variable-aggregate data type 构成可变聚合类型“值”的成分的数目不确定。

抽象数据类型三元组表示:(D, S, P)

ADT抽象数据类型名 {

数据对象:

数据关系:

基本操作:

}

其中数据对象和数据关系的定义用伪码描述,基本操作的定义格式为

基本操作名(参数表)

初始条件:

操作结果:

算法algorithm 是对特定问题求解步骤的一种描述,它是指令的有限序列,其中一条指令表示一个或多个操作;

算法的重要特性:

有穷性

确定性

可行性

输入

输出

算法设计的要求:

正确性correctness 算法应当满足具体问题的要求;

可读性 readability 算法主要是为了人的阅读与交流,其次才是机器执行;

健壮性 robustness

效率与地存储量需求 效率指的是算法执行的时间。

算法效率的度量——时间复杂度

算法的存储空间存储空间需求——空间复杂度space complexity

数据结构与算法分析java语言描述 严蔚敏翻译_重读数据结构——严蔚敏C语言版...相关推荐

  1. s数据结构替换子表java版_数据结构与算法分析Java语言描述(第3版) PDF和源码免费 下载...

    <数据结构与算法分析Java语言描述(第3版)>PDF和源码免费 下载 免积分下载 用户下载说明: 图书简介: 数据结构:Java语言描述(原书第3版)是国外数据结构与算法分析方面的经典教 ...

  2. 《数据结构与算法分析—Java语言描述》pdf

    下载地址:网盘下载 内容简介 编辑 "数据结构"是计算机专业的基础与核心课程之一,Java是现今一种热门的语言.本书在编写过程中特别考虑到了面向对象程序设计(OOP)的思想与Jav ...

  3. go语言 第三方包安装方法_【分享吧】Go语言第三方包的使用介绍与场景应用

    Go语言是一种跨平台(Mac OS.Windows.Linux 等)的静态编译型语言.拥有媲美C语言的强大性能,支持静态类型安全,在普通计算机上能几秒内快速编译一个大项目,开发效率跟动态语言相差无几. ...

  4. c语言关键字中英翻译机课程设计,课程设计--C语言关键字中英翻译机.doc

    课程设计--C语言关键字中英翻译机 课 程 设 计 报 告 学院.系:吉林大学珠海学院计算机科学与技术系专业名称:计算机科学与技术课程设计科目C语言程序课程设计所在班级:4班学生学号:学生姓名:曾伟雄 ...

  5. 数据结构与算法分析Java语言描述 原书超清第3版 下载

    链接: https://pan.baidu.com/s/135hWyCK3SssLwMmeHn4PCg    提取码: 9kk7

  6. 数据结构java语言描述朱战立_数据结构——树(Java语言描述)

    树根:rootNode. 树只有一个树根. 节点:Node. 树上的所有节点. 子节点数组:Node[]. 数组代表每个节点的所有子节点 父节点:parentNode. 每个节点只有一个父节点. 2. ...

  7. java红黑树 冯舜玺_《数据结构与算法分析》(美)马克·艾伦·维斯(Mark Allen Weiss) 著;冯舜玺,陈越 译著【摘要 书评 在线阅读】-苏宁易购图书...

    出版者的话 前言 章  引论1 1.1  本书讨论的内容1 1.2  数学知识复习2 1.2.1  指数2 1.2.2  对数2 1.2.3  级数2 1.2.4  模运算4 1.2.5  证明的方法 ...

  8. 《数据结构与算法分析Java》引论

    引论 数学公式回顾 几何级数公式 算术级数.调和级数 模运算 最常用的两种证明方法 归纳法 反证法 递归的四大法则 基准情形(边界条件) 不断逼近基准情形 设计法则(所有的递归调用能运行) 合成效益法 ...

  9. 数据结构(python语言描述)课后题答案_数据结构课后习题及答案

    2.2. 当对一个线性表经常进行的是插入和删除操作时,采用链式存储结构为宜. 2.3. 当对一个线性表经常进行的是存取操作,而很少进行插入和删除操作时,最好采用顺序存储结构. 2.6. 带头结点的单链 ...

  10. python语言描述思维导图_雨痕 的《Python学习笔记》--附脑图(转)

    近日,在某微博上看到有人推荐了 雨痕 的<Python学习笔记>,从github上下载下来看了下,确实很不错. 注意,这本学习笔记不适合Python新手学习. 从目录上看,并不能看出这本笔 ...

最新文章

  1. android TextView 文本里面设置超链接
  2. vue及脚手架的下载安装,创建项目
  3. memcached的认识
  4. Dubbo简单介绍及实例
  5. SystemTimer,TimerTaskList等源码分析
  6. 我写了一个java实体类,implements了Serializable接口,然后我如何让serialversionUID自动生成...
  7. c#中using 和new
  8. Python获取文件后缀名
  9. What Are The Differences Between Base, Medium, and Full Camera Link Configurations?
  10. 责任分配矩阵和raci的区别_有限责任公司实现盈利,当年就一定可以分红吗?...
  11. python自定义规律绘制_ForMaiR - 自定义规则的邮件自动转发工具
  12. office插件开发_Excel插件——方方格子
  13. 服务器虚拟化后有几个io地址,CPU虚拟化,内存虚拟化和IO虚拟化
  14. 弹性文件服务(Scalable File Service,SFS)
  15. 转 Fedora各个历史版本官方下载地址
  16. 长周期光纤光栅 matlab,长周期光纤光栅传输谱的MATLAB仿真
  17. Android 微信登录详细流程
  18. 电脑属性,如何设置电脑的属性?【新手必读】
  19. react 中 JSX 语法的转化过程
  20. 网络机柜的型号和规格有哪些

热门文章

  1. 《平衡掌控者》笔记(结)
  2. CorelDRAW如何设置填充颜色和边框颜色
  3. javascript 属性的特性 二十五
  4. 为vue配置apache的rewrite
  5. 惊呆了,Java居然已经内卷成菜花啦。
  6. 苹果9L0-403测试对于被选入苹果认证支持专家(ACSP)10.6名称
  7. 双机热备软件 Pacemaker和Keepalived
  8. Django 框架图
  9. k8s出现问题导致cpu使用率过高
  10. 【SDOI2013】项链 题解