1.有关一些概念理解
时间复杂度:可以说是代码所运行的效率
空间复杂度:算法所占有的存储资源
2.执行时间
矩阵算法的执行时间:T(n)=2n^3 + 3n^2 + 2n +1
for(int i = 1; i < =n ; i++){
for(j =1 ; j <=n ;j ++){
c[i][j] = 0;
for(k=1;k<=n;k++){
c[i][j]=c[i][j]+a[i][k]*b[k][j];
}
}
}
3.时间复杂度
T(n)=O(f(n))
f(n)表示最大频度所表示的函数表达式,即上面执行时间内提到的矩阵则为 f(n) =n^3
时间复杂度与问题规模及数据初始状态(如:1在某个数组中的时间复杂度? 跟在什么位置,是否存在)有关。
4.数据结构包括:
(1)逻辑结构:可以看做是具体问题抽象出来的数学模型
包含两个要素:数据元素、关系
表现的形式有:集合结构,线性结构(队列),树形结构(非线性),图形或网状结构(出现环或封闭)。
(2)存储结构(物理结构):
数据元素在计算机中以 顺序存储结构或链式存储结构 的基本形式存在。
5.逻辑结构层次图
6.算法的五大特性:
确定性,可行性,有穷性,输入,输出。
7.算法优劣评判四大标准:
正确性,可行性,健壮性,高效性。