数据结构与运算

数据结构与运算

1 算法

1.1 算法的基本概念

1.1.1 算法的基本特征

可行性

确定性

有穷性

拥有足够的情报

1.1.2 算法设计的基本方法

1.1.3 算法的基本要素

算法中对数据的运算和操作

算法的控制结构

1.1.4 算法设计的基本方法

1.2 算法的复杂度

1.2.1 时间复杂度

1.2.2 空间复杂度

2 数据结构的基本概念

2.1 数据的逻辑机构

2.1.1 D

2.1.2 R

2.2 数据的存储结构

3 线性表及其顺序存储结构

3.1 线性表的基本概念

3.2 线性表的顺序存储结构

3.3 线性表的插入运算

3.3.1 实现方法,从后往前

3.3.2 复杂度

3.4 线性表的删除运算

3.4.1 实现方法

3.4.2 复杂度,平均一半

3.5 适用场合:不常变动

4 栈和队列

4.1 栈及其基本运算

4.1.1 定义:限定在一端进行插入和删除的线性表

4.1.2 顺序存储:一维数组

4.1.3 基本运算

入栈运算

退栈运算

4.2 队列及其基本运算

4.2.1 定义:允许在一端进行插入、而在另一端进行删除的线

性表

4.2.2 循环队列

循环队列的基本运算

入队运算

退队运算

5 线性链表

5.1 基本概念:线性表的链式存储结构称为线性链表

5.1.1 线性链表

5.1.2 带链的栈

5.1.3 带链的队列

5.2 线性链表的基本运算

5.2.1 查找

5.2.2 插入

5.2.3 删除

5.3 循环链表

6 树和二叉树

6.1 树的基本概念

6.1.1 父结点

6.1.2 根结点

6.1.3 子结点

6.1.4 叶子结点

6.1.5 结点的度

6.1.6 树的度

6.1.7 树的深度

6.1.8 子树

6.2 二叉树及其基本性质

6.2.1 二叉树的特点

非空二叉树只有一个 根结点 每一个结点最多有两棵子树

6.2.2 二叉树的基本性质

6.3 满二叉树和完全二叉树

6.3.1 父结点:int(k/2)

6.3.2 左子结点:2k

6.3.3 右子结点:2k+1

6.4 二叉树的存储结构

6.4.1 前序遍历

6.4.2 中序遍历

6.4.3 后序遍历

6.5 查找技术

6.5.1 顺序查找

6.6 排序技术 冒泡排序法 快速排序法 简单插入排序法希尔排序法 See also: 简单选择排序法堆排序法 6.5.2 二分查找 6.6.1 交换类排序6.6.2 插入类排序6.6.3 选择类排序

数据结构与运算

1 算法

1.1 算法的基本概念

1.1.1 算法的基本特征

可行性

确定性

有穷性

拥有足够的情报

1.1.2 算法设计的基本方法

1.1.3 算法的基本要素

算法中对数据的运算和操作

算法的控制结构

1.1.4 算法设计的基本方法

1.2 算法的复杂度

1.2.1 时间复杂度

1.2.2 空间复杂度

2 数据结构的基本概念

2.1 数据的逻辑机构

2.1.1 D

2.1.2 R

2.2 数据的存储结构

3 线性表及其顺序存储结构

3.1 线性表的基本概念

3.2 线性表的顺序存储结构

3.3 线性表的插入运算

3.3.1 实现方法,从后往前

3.3.2 复杂度

3.4 线性表的删除运算

3.4.1 实现方法

3.4.2 复杂度,平均一半

3.5 适用场合:不常变动

4 栈和队列

4.1 栈及其基本运算

4.1.1 定义:限定在一端进行插入和删除的线性表

4.1.2 顺序存储:一维数组

4.1.3 基本运算

入栈运算

退栈运算

4.2 队列及其基本运算

4.2.1 定义:允许在一端进行插入、而在另一端进行删除的线

性表

4.2.2 循环队列

循环队列的基本运算

入队运算

退队运算

5 线性链表

5.1 基本概念:线性表的链式存储结构称为线性链表

5.1.1 线性链表

5.1.2 带链的栈

5.1.3 带链的队列

5.2 线性链表的基本运算

5.2.1 查找

5.2.2 插入

5.2.3 删除

5.3 循环链表

6 树和二叉树

6.1 树的基本概念

6.1.1 父结点

6.1.2 根结点

6.1.3 子结点

6.1.4 叶子结点

6.1.5 结点的度

6.1.6 树的度

6.1.7 树的深度

6.1.8 子树

6.2 二叉树及其基本性质

6.2.1 二叉树的特点

非空二叉树只有一个 根结点 每一个结点最多有两棵子树

6.2.2 二叉树的基本性质

6.3 满二叉树和完全二叉树

6.3.1 父结点:int(k/2)

6.3.2 左子结点:2k

6.3.3 右子结点:2k+1

6.4 二叉树的存储结构

6.4.1 前序遍历

6.4.2 中序遍历

6.4.3 后序遍历

6.5 查找技术

6.5.1 顺序查找

6.6 排序技术 冒泡排序法 快速排序法 简单插入排序法希尔排序法 See also: 简单选择排序法堆排序法 6.5.2 二分查找 6.6.1 交换类排序6.6.2 插入类排序6.6.3 选择类排序


相关内容

  • 实验一:脱机运算器实验
  • 实验一 脱机运算器实验 一.实验目的 1.深入了解位片结构运算器AM2901的功能与用法: 2.学习4片AM2901组成一个16位运算器的级连方式,深化运算器部件的组成.设计.控制和使用等方面的知识. 二.实验原理 运算器是计算机中执行各种算术和逻辑运算操作的部件.运算器的基本操作包括加.减.乘.除 ...

  • TEC-2实验计算机运算器实验
  • TEC-2实验计算机运算器实验 一. 实验目的 1.了解和掌握Am2901运算器的组成结构和工作原理 2.认识和掌握TEC-2机运算器的组成和工作原理 3.了解和掌握TEC-2机运算器相关控制信号偶的含义和使用方法 4.了解和掌握运算器的进位时间的测试方法,及进一步掌握双踪示波器的使用方法 二. 实 ...

  • 运算器-存储器实验指导
  • 实验指导 实验1 基本算术逻辑运算实验 一.实验目的 1. 掌握简单运算器的数据传送通路. 2. 掌握运算器的组成及工作原理. 3. 了解4位算术逻辑单元74LS181的组合功能,熟悉运算器执行算术操作和逻辑操作的具体实现过程. 4. 验证带进位控制的74LS181的功能. 二.预习要求 1. 复习 ...

  • 算法表达中的抽象机制(一)
  • 算法表达中的抽象机制(一) 简介 要用计算机解决一个稍为复杂的实际问题,大体都要经历如下的步骤. 将实际问题数学化,即把实际问题抽象为一个带有一般性的数学问题.这一步要引入一些数学概念,精确地阐述数学问题,弄清问题的已知条件.所要求的结果.以及在已知条件和所要求的结果之间存在着的隐式或显式的联系. ...

  • 计算机组成原理实验报告 算术逻辑运算单元实验
  • 西华大学数学与计算机学院实验报告 课程名称:计算机组成原理 指导教师:祝昌宇 实验名称:算术逻辑运算单元实验 年级:2011级 姓名:蒋俊 学号:[**************] 实验成绩: 实验日期:2013-12-15 一.目的 1. 掌握简单运算器的数据传输方式 2. 掌握74LS181的功能 ...

  • 计算机组成原理答案
  • 第二章运算方法和运算器练习 一.填空题 1. 补码加减法中,(符号位)作为数的一部分参加运算,(符号位产生的进位)要丢掉. 2. 为判断溢出,可采用双符号位补码,此时正数的符号用(00)表示,负数的符号用 (11)表示. 3. 采用双符号位的方法进行溢出检测时,若运算结果中两个符号位(不相同),则表 ...

  • 离散数学王元元习题解答 (11)1
  • 第四篇 抽象代数 第十章 代数结构通论 10.1 代数结构 内容提要 10.1.1代数结构的意义 定义10.1 称 为集合S 上的n 元运算(operaters ),如果 为Sn 到S 的一个函数.以下 常用以表示二元运算, (x,y) 常记为x y : 常用以表示一元运算.对二元运算,': 称 运 ...

  • 程序设计语言-有理数运算程序
  • 有理数运算程序 一.题目 有理数运算程序.有理数是一个可以化为一个分数的数,例如2/3,533/920,-12/49都是有理数.在C++中,并没有预先定义有理数,该课程设计要求定义一个有理数类,将有理数的分子和分母分别存放在两个整型变量中,模拟进行针对有理数的各种操作. 二.问题的分析 针对有理数的 ...

  • 新人教版义务教育教科书数学八年级下册教材分析
  • 新人教版义务教育教科书数学八年级下册教材分析 袁小芳 一.主要内容及课时安排 本册教材包括第十六章至第二十章共五章内容,涵盖"数与代数"."图形与几何"."统计与概率"."综合与实践"全部四个领域.全书需约62课时,具体 ...

  • 第2章 打下坚实基础--基本语法
  • 第2章 从本章开始,我们将全面介绍PHP的基础知识.本章的主要内容包括:PHP的数据类型.类型之间的转换.PHP的变量和常量.表达式和运算符,以及流程控制语句. 2.1 从" Hello World"开始 PHP语法入门 在开始学习PHP语言之前,我们先来看一个最简单的PHP应用 ...