算法的基本特征是
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法的基本特征是:可行性确定性有穷性拥有足够的情报
算法的基本运算是:算术运算逻辑运算关系运算数据运算
算法的结构特征是:顺序结构选择结购循环结构
算法的基本设计方法:列举法归纳法递推递归减半递推技术回溯法算法复杂度是指时间复杂度和空间复杂度
时间复杂度是指执行算法所需要的计算工作量
空间复杂度是指执行这个算法所需要的内存空间
数据结构分为线性结构和非线性结构
栈、队列、串等都是线性结构
数组、广义表、二叉树和图是非线性结构
线性表的顺序存储结构具有以下特点
线性表中的所有元素所占的内存空间是连续的
线性表中的各数据元素在存储空间中是按照逻辑顺序以此存放的
顺序表的运算有查找、插入、删除三种
栈是一种特殊的线性表它具“有先后出”或“后进先出”的原则
栈顶既可以被删除又可以被插入,栈底既不能被插入也不能被删除。栈底是封闭的
栈的基本运算有入栈退栈读栈顶
队列是一种线性结构它具有“先进先出”的原则一般在队头删除队尾插入
二叉树是一种非线性结构
非空二叉树只有一个根节点
二叉树的基本性质:在二叉树的第K层最多有2^(K-1)(K》1)个节点
深度为M的二叉树最多有2^M-1个节点。
在任意一个二叉树中度为0的结点个数总是比度为一的结点个数多一个
具有N个结点的二叉树其深度至少为以2为底N的对数加一其中以2为底N的对数取整数
二叉树的遍历
1前序遍历:先访问根结点,然后遍历左子树最后遍历右子树
2中序遍历:先访问左子树然后遍历跟结点最后遍历右子树
3后序遍历:先访问左子树然后遍历右子树最后遍历根结点
在以下两种情况只能采用顺序查找
1如果线性表为无序表,则不管是顺序存储结构还是链式存储结构只能用顺序查找。
2既然是有序线性表,如果采用链式存储结构,也只能用顺序查找对于长度为N的有序线性表在最坏的情况下二分法查找只需比较以2为底N的对数而顺序查找需要比较N次。
冒泡排序法在最坏的情况下冒泡排序法需要比较次数为N(N-1)\2
预处理命令开头必须用#号开头并且末尾不加;号
命令行可以出现在程序的任何一行的开头部位,其作用一直持续到源文件的末尾
#define 宏名(形参表)替换文件
如:#define MU(X,Y)((X)*(Y)). MU(X,Y)简称宏,其中MU是一个用户标识符称为宏名,宏名和左括号必须挨着中间不能有空格
Typedef 类型名标识符;
程序中的main( )函数是主函数的起始行,也是C语言程序执行的起始行每一个函数有且只有一个主函数
一个C程序总是从主函数开始执行,到程序执行完后从主函数结束执行,不论main()函数在程序的位置如何
在注释之间不可以在嵌套“|*”和“|*”。
数据库设计与原理
数据设计有两种方法即面向数据的方法和面向过程的方法
面向数据的方法是以信息需求为主兼顾处理需求;面向过程的方法是以处理需求为主,兼顾信息需求。由于数据在系统中稳定性高,数据已成为系统的核心,因此面向数据的设计方法以成为主流
数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开发分解成目标独立的若干阶段他们是需求分析阶段,概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、和进一步修改阶段。在数据设计中采用前四个阶段。
传统的集合运算
1、投影运算。
2、选择运算。
3、笛卡尔积。