热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据结构与算法|青岛大学|王卓

来源链接:https:space.bilibili.com40323036video?tid0&page6&keyword&orderpubdatehttps:www

来源链接:https://space.bilibili.com/40323036/video?tid=0&page=6&keyword=&order=pubdate
https://www.bilibili.com/read/cv2306631?from=search

由于原 up 主 @青岛大学--王卓 上传的数据结构视频教程没有集中在同一个 av 号中进行分集上传,每次学完要去找下一个视频,因此我将视频按顺序整理做个专栏,方便学习。


第一周

第01周a--前言

第01周b--1.1数据结构研究内容

第01周c--1.2基本概念和术语1

第01周d--1.2基本概念和术语2

第01周e--1.3抽象数据类型的表示与实现

第01周f--1.4算法与算法分析1

第01周g--1.4算法与算法分析2

第01周h--1.4算法与算法分析3

第01周i--1.4算法与算法分析4

第二周

第02周01--2.1线性表的定义和特点

第02周02--2.2案例引入

第02周03--2.3线性表的类型定义

第02周04--2.4线性表的顺序表示和实现1

第02周05--2.4线性表的顺序表示和实现2

第02周06--类C语言有关操作补充1

第02周07--类C语言有关操作补充2

第02周08--2.4线性表的顺序表示和实现3

第02周09--2.4线性表的顺序表示和实现4--查找算法

第02周10--2.4线性表的顺序表示和实现5--插入算法

第02周11--2.4线性表的顺序表示和实现6--删除算法

第02周12--顺序表小结

第三周

第3周01--2.5线性表的链式表示和实现1--链表概念

第3周02--2.5线性表的链式表示和实现2--单链表的定义

第3周03--2.5线性表的链式表示和实现3--单链表基本操作1-初始化和判断空表

第3周04--2.5线性表的链式表示和实现4--单链表基本操作2--销毁单链表

第3周05--2.5线性表的链式表示和实现5--单链表基本操作3--清空单链表

第3周06--2.5线性表的链式表示和实现6--单链表基本操作4--求单链表的表长

第3周07--2.5线性表的链式表示和实现7--单链表基本操作5--取第i个元素值

第3周08--2.5线性表的链式表示和实现8--单链表基本操作6--按值查找

第3周09--2.5线性表的链式表示和实现9--单链表基本操作7--插入节点

第3周10--2.5线性表的链式表示和实现10--单链表基本操作8--删除节点

第3周11--2.5线性表的链式表示和实现11--单链表基本操作9--查找插入删除算法分析

第3周12--2.5线性表的链式表示和实现12--单链表基本操作10--头插法建立链表

第3周13--2.5线性表的链式表示和实现13--单链表基本操作11--尾插法建立链表

第四周

第04周01--2.5.3循环链表1

第04周02--2.5.3循环链表2--两个链表合并

第04周03--2.5.4双向链表1

第04周04--2.5.4双向链表2--双向链表的插入操作

第04周05--2.5.4双向链表3--双向链表的删除操作

第04周06--单链表、循环链表、双向链表的比较

第04周07--2.6顺序表和链表的比较

第04周08--2.7线性表的应用1--线性表的合并

第04周09--2.7线性表的应用2--有序表的合并--用顺序表实现

第04周10--2.7线性表的应用3--有序表的合并--用链表实现

第04周11--2.8案例分析与实现1--多项式运算

第04周12--2.8案例分析与实现2--稀疏多项式运算

第04周13--2.8案例分析与实现3--图书信息管理

第五周

第05周01--3.1栈和队列的定义和特点1--栈和队列介绍

第05周02--3.1栈和队列的定义和特点2--3.1.1栈的定义和特点

第05周03--3.1栈和队列的定义和特点1--3.1.2队列的定义和特点

第05周04--3.2案例引入

第05周05--3.3栈的表示和实现1--3.3.1栈的抽象数据类型定义

第05周06--3.3栈的表示和实现2--3.3.2栈的顺序表示和实现1--栈的顺序表示

第05周07--3.3栈的表示和实现3--3.3.2栈的顺序表示和实现2--顺序栈操作1

第05周08--3.3栈的表示和实现4--3.3.2栈的顺序表示和实现3--顺序栈操作2

第05周09--3.3栈的表示和实现5--3.3.2栈的顺序表示和实现4--顺序栈操作3

第05周10--3.3栈的表示和实现6--3.3.3链栈表示和实现

第05周11--3.4栈和递归

第05周12--3.5队列的表示和实现1--3.5.1队列的类型定义

第05周13--3.5队列的表示和实现2--3.5.2队列的顺序表示和实现1

第05周14--3.5队列的表示和实现3--3.5.2队列的顺序表示和实现2

第05周15--3.5队列的表示和实现4--3.5.3队列的链式表示和实现

第六周

第06周01--第4章串、数组和广义表1-4.1串的定义

第06周02--第4章串、数组和广义表2-4.2案例引入

第06周03--第4章串、数组和广义表3-4.3串的类型定义、存储结构

第06周04--第4章串、数组和广义表4-4.3串的操作--串的匹配算法1--BF算法

第06周05--第4章串、数组和广义表5-4.3串的操作--串的匹配算法2--KMP算法

第06周06--第4章串、数组和广义表6-4.4数组1--数组的定义及特点

第06周07--第4章串、数组和广义表7-4.4数组2--数组的抽象类型定义

第06周08--第4章串、数组和广义表8-4.4数组3--数组的顺序存储

第06周09--第4章串、数组和广义表9-4.4数组4--对称矩阵压缩存储

第06周10--第4章串、数组和广义表10-4.4数组5--三角矩阵、对角矩阵压缩存储

第06周11--第4章串、数组和广义表11-4.4数组6--稀疏矩阵压缩存储

第06周12--第4章串、数组和广义表12-4.5广义表

第06周13--第4章串、数组和广义表13-4.6案例分析与实现

第七周

第07周01--5.1树和二叉树的定义1--5.1.1树的定义

第07周02--5.1树和二叉树的定义2--5.1.2树的基本术语

第07周03--5.1树和二叉树的定义3--5.1.3二叉树的定义

第07周04--5.2案例引入

第07周05--5.3 树和二叉树的抽象数据类型定义

第07周06--5.4 二叉树的性质和存储结构1--二叉树性质1、2、3

第07周07--5.4 二叉树的性质和存储结构2--满二叉树和完全二叉树

第07周08--5.4 二叉树的性质和存储结构3--二叉树性质4、5

第07周09--5.4 二叉树的性质和存储结构4--二叉树的存储结构1-顺序存储结构

第07周10--5.4 二叉树的性质和存储结构4--二叉树的存储结构2-链式存储结构

第07周11--5.5 遍历二叉树和线索二叉树1--遍历二叉树

第07周12--5.5 遍历二叉树和线索二叉树2--由遍历序列确定二叉树

第八周

第08周01--5.5遍历二叉树和线索二叉树3--二叉树的先序递归遍历算法

第08周02--5.5遍历二叉树和线索二叉树4--二叉树的递归遍历算法及分析

第08周03--5.5遍历二叉树和线索二叉树5--二叉树的遍历算法--中序非递归算法

第08周04--5.5遍历二叉树和线索二叉树6--二叉树的遍历算法--层次遍历算法

第08周05--5.5遍历二叉树和线索二叉树7--二叉树的遍历算法应用1--建立二叉树算法

第08周06--5.5遍历二叉树和线索二叉树8--二叉树的遍历算法应用2--复制、求结点数、求叶子结点数

第08周07--5.5遍历二叉树和线索二叉树9--线索二叉树

第08周08--5.6树和森林1--树的存储结构1-双亲表示法

第08周09--5.6树和森林2--树的存储结构2-孩子链表

第08周10--5.6树和森林3--树的存储结构3-孩子兄弟表示法

第08周11--5.6树和森林4--树与二叉树的转换

第08周12--5.6树和森林5--森林与二叉树的转换

第08周13--5.6树和森林6--树和森林的遍历

第九周

第09周01--5.7哈夫曼树及其应用1-引子

第09周02--5.7哈夫曼树及其应用2-5.7.1哈夫曼树的基本概念

第09周03--5.7哈夫曼树及其应用3-5.7.2哈夫曼树的构造算法1

第09周04--5.7哈夫曼树及其应用4-5.7.2哈夫曼树的构造算法2-哈夫曼树算法实现

第09周05--5.7哈夫曼树及其应用5-5.7.3哈夫曼编码1-哈夫曼编码思想

第09周06--5.7哈夫曼树及其应用6-5.7.3哈夫曼编码2-哈夫曼编码的算法实现

第09周07--5.7哈夫曼树及其应用7-5.7.3哈夫曼编码3-文件的编码和译码

第09周08--6.1图的基本概念和术语1

第09周09--6.1图的基本概念和术语2

第09周10--6.2案例引入

第09周11--6.3图的类型定义

第十周

第10周01--6.4图的存储结构1-1邻接矩阵表示法1-无向图的邻接矩阵

第10周02--6.4图的存储结构2-1邻接矩阵表示法2-有向图和网的邻接矩阵

第10周03--6.4图的存储结构3-2采用邻接矩阵表示法创建无向网

第10周04--6.4图的存储结构4-3邻接矩阵表示法的优缺点

第10周05--6.4图的存储结构5-6.4.2邻接表表示法1-无向图的邻接表

第10周06--6.4图的存储结构6-6.4.2邻接表表示法2-有向图的邻接表

第10周07--6.4图的存储结构7-6.4.2邻接表表示法3-建立邻接表的算法

第10周08--6.4图的存储结构8-6.4.2邻接表表示法4-邻接表表示法优缺点及与邻接矩阵的关系

第10周09--6.4图的存储结构9-6.4.3十字链表

第10周10--6.4图的存储结构10-6.4.4邻接多重表

第10周11--6.5图的遍历1--深度优先搜索遍历思想

第10周12--6.5图的遍历2--深度优先搜索遍历实现--邻接矩阵上的遍历算法

第10周13--6.5图的遍历3--深度优先搜索遍历实现--邻接表上的遍历算法及算法分析

第10周14--6.5图的遍历4--广度优先搜索遍历及其实现

第十一周

第11周01--6.6图的应用1--6.6.1最小生成树1--生成树及其构造

第11周02--6.6图的应用2--6.6.1最小生成树2--最小生成树及其典型应用

第11周03--6.6图的应用3--6.6.1最小生成树3--MST性质

第11周04--6.6图的应用4--6.6.1最小生成树4--构造最小生成树1--Prim算法

第11周05--6.6图的应用5--6.6.1最小生成树5--构造最小生成树2--Kruskal算法

第11周06--6.6图的应用6--6.6.2最短路径1--最短路径问题抽象

第11周07--6.6图的应用7--6.6.2最短路径2--Dijkstra算法

第11周08--6.6图的应用8--6.6.2最短路径3--Floyd算法

第11周09--6.6图的应用9--6.6.3拓扑排序

第11周10--6.6图的应用10--6.6.4关键路径1--用AOE网表示工程计划

第11周11--6.6图的应用11--6.6.4关键路径2--求解关键路径

第十二周

第12周01--第7章查找1--7.1查找的基本概念

第12周02--第7章查找2--7.2线性表的查找1--7.2.1顺序查找1--顺序查找算法

第12周03--第7章查找3--7.2线性表的查找2--7.2.1顺序查找2--顺序查找算法分析

第12周04--第7章查找4--7.2线性表的查找3--7.2.2折半查找1--折半查找算法

第12周05--第7章查找5--7.2线性表的查找4--7.2.2折半查找2--折半查找算法分析

第12周06--第7章查找6--7.2线性表的查找5--7.2.3分块查找1--分块查找算法

第12周07--第7章查找7--7.2线性表的查找6--7.2.3分块查找2--分块查找算法分析及比较

第12周08--第7章查找8--7.3树表的查找1--7.3.1二叉排序树1--二叉排序树定义

第12周09--第7章查找9--7.3树表的查找2--7.3.1二叉排序树2--二叉排序树查找--递归算法

第12周10--第7章查找10--7.3树表的查找3--7.3.1二叉排序树3--二叉排序树查找算法分析

第12周11--第7章查找11--7.3树表的查找4--7.3.1二叉排序树4--二叉排序树的插入和生成

第12周12--第7章查找12--7.3树表的查找5--7.3.1二叉排序树5--二叉排序树的删除

第十三周

第13周1--7.3树表的查找6--7.3.2平衡二叉树1--平衡二叉树的定义

第13周2--7.3树表的查找7--7.3.2平衡二叉树2--平衡调整方法1

第13周3--7.3树表的查找8--7.3.2平衡二叉树3--平衡调整方法2--四种类型的调整

第13周4--7.3树表的查找9--7.3.2平衡二叉树4--平衡调整方法3--例题

第13周5--7.4散列表的查找1--7.4.1散列表的基本概念

第13周6--7.4散列表的查找2--7.4.2散列函数的构造

第13周7--7.4散列表的查找3--7.4.3处理冲突方法1--开地址法1-线性探测法

第13周8--7.4散列表的查找4--7.4.3处理冲突方法2--开地址法2-二次探测法、伪随机探测法

第13周9--7.4散列表的查找5--7.4.3处理冲突方法3--链地址法

第13周10--7.4散列表的查找6--7.4.4散列表的查找及性能分析

第十四周

第14周01--第8章排序1--8.1排序概述

第14周02--第8章排序2--8.2插入排序1--直接插入排序

第14周03--第8章排序3--8.2插入排序2--折半插入排序

第14周04--第8章排序4--8.2插入排序3--希尔排序

第14周05--第8章排序5--8.3交换排序1--冒泡排序

第14周06--第8章排序6--8.3交换排序2--快速排序1

第14周07--第8章排序7--8.3交换排序3--快速排序2--快速排序算法分析

第14周08--第8章排序8--8.4选择排序1--简单选择排序

第14周09--第8章排序9--8.4选择排序2--堆排序1

第14周10--第8章排序10--8.4选择排序3--堆排序2--堆调整

第14周11--第8章排序11--8.4选择排序4--堆排序3--建立堆

第14周12--第8章排序12--8.4选择排序5--堆排序4--堆排序算法及分析

第14周13--第8章排序13--8.5归并排序

第14周14--第8章排序14--8.6基数排序

第14周15--第8章排序15--各种排序方法比较


第1周:

数据结构与算法基础–第01周a–前言:https://www.bilibili.com/video/BV1Ts411c7ZX
数据结构与算法基础–第01周b–1.1数据结构研究内容:https://www.bilibili.com/video/BV1Ts411c7oC
数据结构与算法基础–第01周c–1.2基本概念和术语1:https://www.bilibili.com/video/BV1jW411f7Zw
数据结构与算法基础–第01周d–1.2基本概念和术语2:https://www.bilibili.com/video/BV1fW411f7kK
数据结构与算法基础–第01周e–1.3抽象数据类型的表示与实现:https://www.bilibili.com/video/BV1ws411F7cx
数据结构与算法基础–第01周f–1.4算法与算法分析1:https://www.bilibili.com/video/BV1cW411Z7CM
数据结构与算法基础–第01周g–1.4算法与算法分析2:https://www.bilibili.com/video/BV1mW411Z7yc
数据结构与算法基础–第01周h–1.4算法与算法分析3:https://www.bilibili.com/video/BV13W411C7dv
数据结构与算法基础–第01周i–1.4算法与算法分析4:https://www.bilibili.com/video/BV13W411C7Qz

第2周:

数据结构与算法基础–第02周01–2.1线性表的定义和特点:https://www.bilibili.com/video/BV1KW411k7S8
数据结构与算法基础–第02周02–2.2案例引入:https://www.bilibili.com/video/BV1KW411k7H8
数据结构与算法基础–第02周03–2.3线性表的类型定义:https://www.bilibili.com/video/BV1KW411k7pS
数据结构与算法基础–第02周04–2.4线性表的顺序表示和实现1:https://www.bilibili.com/video/BV1KW411k7pH
数据结构与算法基础–第02周05–2.4线性表的顺序表示和实现2:https://www.bilibili.com/video/BV1KW411k7JC


推荐阅读
  • JavaScript实现表格数据的实时筛选功能
    本文介绍如何使用JavaScript实现对表格数据的实时筛选,帮助开发者提高用户体验。通过简单的代码示例,展示如何根据用户输入的关键字动态过滤表格内容。 ... [详细]
  • 深入理解Redis的数据结构与对象系统
    本文详细探讨了Redis中的数据结构和对象系统的实现,包括字符串、列表、集合、哈希表和有序集合等五种核心对象类型,以及它们所使用的底层数据结构。通过分析源码和相关文献,帮助读者更好地理解Redis的设计原理。 ... [详细]
  • 获取Jedis和Commons Pool JAR包的两种方法及详细步骤
    本文介绍如何通过网盘链接或官方网站获取Jedis和Commons Pool的JAR包,并提供详细的图文教程。同时,还附有导入JAR包到项目的相关建议。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • Yii 实现阿里云短信发送 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文详细介绍了在企业级项目中如何优化 Webpack 配置,特别是在 React 移动端项目中的最佳实践。涵盖资源压缩、代码分割、构建范围缩小、缓存机制以及性能优化等多个方面。 ... [详细]
  • 本文详细介绍了如何解决OBS在全屏录制时出现黑屏的问题,并提供了关于正确配置显卡以实现高效推流的指导。通过调整操作系统和显卡设置,确保OBS能够稳定运行并提供高质量的直播或录制体验。 ... [详细]
  • 本文探讨了如何在iOS开发环境中,特别是在Xcode 6.1中,设置和应用自定义文本样式。我们将详细介绍实现方法,并提供一些实用的技巧。 ... [详细]
  • Python第三方库安装的多种途径及注意事项
    本文详细介绍了Python第三方库的几种常见安装方法,包括使用pip命令、集成开发环境(如Anaconda)以及手动文件安装,并提供了每种方法的具体操作步骤和适用场景。 ... [详细]
  • Splay Tree 区间操作优化
    本文详细介绍了使用Splay Tree进行区间操作的实现方法,包括插入、删除、修改、翻转和求和等操作。通过这些操作,可以高效地处理动态序列问题,并且代码实现具有一定的挑战性,有助于编程能力的提升。 ... [详细]
  • 本文介绍如何在QT框架中使用QWebSocket和QTcpSocket实现SSL加密通信,涵盖单向认证设置。单向认证常见于Web通信场景,其中客户端验证服务端证书,而服务端不验证客户端证书。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 作为一名专业的Web前端工程师,掌握HTML和CSS的命名规范是至关重要的。良好的命名习惯不仅有助于提高代码的可读性和维护性,还能促进团队协作。本文将详细介绍Web前端开发中常用的HTML和CSS命名规范,并提供实用的建议。 ... [详细]
author-avatar
小晶晶妮妮宝贝
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有