#数据结构与算法—大纲 & 总结
shell从项目整体感知;
数据结构与算法从项目的底层代码(数据与成本)感知
大纲
第 1 章 基础
1.1 为什么学?
1.2 简介
第 2 章 快速入门
2.1 入门案例
2.2 算法复杂度
2.3 性能分析模型详解
第 3 章 数据结构 进阶
3.1 线性表
3.2 顺序表
3.3 单向链表
3.4 双向链表
3.5 单向循环链表
3.6 栈
3.7 队列
3.8 树
第 4 章 算法 进阶
4.1 排序
4.2 搜索
4.3 二叉树
总结:
第 1 章 基础
1、数据结构:存储、组织数据的方式
2、数据结构形式:物理+逻辑
3、算法是什么:方法+思路
4、算法复杂度:时间+空间
5、数据结构和算法关系:数据结构+算法=程序,两者是一体的
6、抽象数据类型ADT:数据+动作,目的是简化开发难度
第 2 章 快速入门
1、算法特性:量入出题题能解,行有意步步可为
a.输入: 算法具有0个或多个输入
b.输出: 算法至少有1个或多个输出
c.有穷性: 算法在有限的步骤之后会自动结束而不会无限循环,并且每一个步骤可以在可接受的时间内完成
d.确定性:算法中的每一步都有确定的含义,不会出现二义性
e.可行性:算法的每一步都是可行的,也就是说每一步都能够执行有限的次数完成
2、算法的评判标准:步骤数量*单位时间 = 代码执行总时间(算法复杂度)
3、时间复杂度:做一件事情需要花费多少时间,全称是渐近时间复杂度,特点:大O记法、规律趋势
4、时间复杂度分类:最优(梦想),最坏(保证),平均(参考)
5、时间复杂度规则:基本O(1)、顺序O(n)、循环O(n3)+O(logn)、分