算法
算法的基本概念
1.概念:算法是指一系列解决问题的清晰指令
2.两种基本要素:对数据对象的运算和操作,算法的控制结构(运算和操作实践的顺序)
3.4个基本特征:可行性,确定性,有穷性,拥有足够的情报。有穷性指的是算法必须在执行有限个步骤之后终止。
4.设计的6种基本方法:列举法,归纳法,递推法,递归法,减半递推技术,回溯法
算法的复杂度
不同的算法可能用不同的时间,空间或者效率来完成同样的任务。一个算法的优劣可以用空间复杂度和时间复杂度来衡量。
1.算法的空间复杂度:执行算法所需的内存空间
2.算法的时间复杂度:执行算法所需计算工作量
数据结构的基本概念
数据结构指相互有关联的数据元素的集合,即数据的组织形式。其中逻辑结构反映数据元素之间的逻辑关系;存储结构为数据的逻辑结构在计算机存储空间中的存放形式,有顺序存储,链式存储,索引存储和散列存储。
数据结构按各元素之间前驱和后继关系的复杂度分为两种
1.线性结构:有且只有一个根结点,且每个结点最多有一个直接前驱和一个直接后继的非空数据结构。线性结构的数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其他数据元素都是首尾相接的。
例子:顺序表(数组),链表,栈,队列
2.非线性结构:不满足线性结构的数据结构,其逻辑特征是一个结点元素可能有多个直接前驱和多个直接后继。非线性结构的数据元素之间存在着一对多或多对多的关系
例子:二维数组,多维数组,广义表,树(二叉树),集合,图形结构,网状结构
网友评论