算法与数据结构体系课


阶段一:算法与数据结构基础
试看
第1周 线性查找法
开课第一周,我们将学习最简单的算法:线性查找法。在学习这样一个最简单的算法的过程中,我们也将接触诸多概念:循环不变量,复杂度分析,如何使用泛型让我们的算法更通用,以及简单的性能测试方式。
课程安排:
1、什么是算法
2、为什么要学习算法和数据结构
3、线性查找算法
4、使用泛型让算法更通用
5、自定义类测试算法
6、循环不变量
7、复杂度分析
8、常见算法复杂度举例
第2周 排序基础
在这一周,我们将接触两个最基础的排序算法:选择排序法和插入排序法。虽然这两个排序算法很简单,但在这一周,我们将巩固我们之前学习的知识,将循环不变量的思路和复杂度分析应用在这些算法中。
课程安排:
1、选择排序法
2、原地排序
3、使用泛型约束
4、Comparable 接口的使用
5、插入排序法
6、插入排序法的优化
7、排序算法的测试数据生成
8、排序算法的性能测试和比较
第3周 数据结构基础:动态数组,栈和队列
这一周,我们开始接触最基础的数据结构:线性数据结构。这些数据结构看似简单,但是通过对他们的学习,会接触很多新的概念,包括对静态数组的扩容和缩容;均摊复杂度分析;数据结构的接口设计;循环队列,等等。
课程安排:
1、理解静态数组和动态数组
2、如何封装属于自己的数据结构
3、动态数组的扩容和缩容
4、均摊复杂度分析
5、数据结构的接口设计
6、栈和栈的应用
7、队列和队列的应用
8、队列的优化:循环队列
9、双端队列
10、Java 语言中的设计问题讨论
第4周 动态数据结构基础:链表
在这一周,我们将接触最基础的动态数据结构:链表。在学习链表的过程中,我们将更深入透彻地理解程序设计中“引用”的概念,更会开始接触程序设计中最常用的一种逻辑搭建方式:递归
课程安排:
1、什么是链表
2、链表的更删改查
3、抽象数据接口
4、使用链表实现栈和队列
5、链表的性能问题
6、链表天然的递归结构
7、通过链表深入理解递归
8、经典链表相关的面试问题

此资源下载价格为30猫币,请先
下载价格:30 猫币
VIP优惠:终身VIP免费
0
分享到:

评论4

请先

  1. 包年VIP升级到终身VIP,也得128元吗?刚冲不旧的包年VIP
    kang07592020-08-27 19:31:27
    • 不用,补差价就行。联系客服QQ3274034910
      admin2020-08-28 8:47:18
  2. 现在课件到第几周了呀?
    quantum2020-09-18 18:15:30
没有账号? 忘记密码?