当前课程知识点:数据结构(下) > 第七章 二叉搜索树 > (a)概述 > 07A-1 纵览
同学们好
在接下来的第7 第8两章
我们讨论的主题将集中在二叉搜索树上
同样 这也是我们整个学习过程中的
又一重要里程碑
它将标志着我们对数据结构的理解
进入到一个更深的层次
回顾我们在第二 第三章作为基础
所介绍的两类基本数据结构
也就是向量和列表
虽然它们都已经可以解决相当多的问题
然而对于进一步的算法设计要求来说
它们都显得力不从心
也正因为此 我们长久以来
追求的一个目标就是
如何将二者的优势结合起来
其实在第五章
我们已经做了这方面的尝试
我们通过对一维列表的拓展
引入了所谓的树结构
或者二叉树结构
我们曾经介绍过
从思路上讲 二叉树结构
可以认为是二维的列表
可以看作是列表在维度上的一种扩充
那么所谓二叉搜索树
也就是binary search tree呢
它首先在形式上继承了二叉树
也就是列表结构的特点
同时也巧妙地借鉴了向量
或者更准确地讲
有序向量的特点和优势
相对而言
后一方面的借鉴更为重要
如果此前对列表结构的借鉴
只是外表的形式
那么这种对有序向量特点的借鉴
才是一种质的提高
这也是BST相对于其它的数据结构
最为传神的部分
实际上 BST中所有这些传神的部分
都集中体现在其中的一个子集
也就是平衡二叉搜索树
balanced binary search tree
简称BBST
经过前人的不断发明和总结
BBST已经成为了一个庞大的家族
在接下来的两章中
我们将选取其中最具代表性的
几个变种 向大家逐一介绍
作为整个这部分内容的一个铺垫
我们在这一节中将回答以下几个问题
也就是二叉搜索树是什么
它有什么特点
以及它所提供的接口形式
和具体的功能语义
-选课之前
--写在选课之前
--宣传片
-考核方式
--考核方式
-OJ系统说明
--关于OJ
--1-注册与登录
--2-界面与选课
--3-提交测试
-关于课程教材与讲义
--课程教材与讲义
-关于讨论区
--关于讨论区
-微信平台
--html
-PA晋级申请
--PA晋级
-(a)概述
--07A-1 纵览
--07A-5 接口
-(a)概述--作业
-(b1)BST:查找
-第七章 二叉搜索树--(b1)BST:查找
-(b2)BST:插入
-(b2)BST:插入--作业
-(b3)BST:删除
-第七章 二叉搜索树--(b3)BST:删除
-(c)平衡与等价
-(c)平衡与等价--作业
-(d1)AVL树:重平衡
-第七章 二叉搜索树--(d1)AVL树:重平衡
-(d2)AVL树:插入
-(d2)AVL树:插入--作业
-(d3)AVL树:删除
-(d3)AVL树:删除--作业
-(d4)AVL树:(3+4)-重构
-(d4)AVL树:(3+4)-重构--作业
-本章测验
--章节测验
-(a1)伸展树:逐层伸展
--习题
-(a2)伸展树:双层伸展
--习题
-(a3)伸展树:算法实现
--习题
-(b1)B-树:动机
--习题
-(b2)B-树:结构
--习题
-(b3)B-树:查找
--习题
-(b4)B-树: 插入
--习题
-(b5)B-树: 删除
--习题
-(xa1)红黑树:动机
--习题
-(xa2)红黑树:结构
--习题
-(xa3)红黑树:插入
--习题
-(xa4)红黑树:删除
-本章测验
--习题
-(b)散列:原理
--09B-3 数组
--09B-4 原理
--09B-5 散列
--09B-6 冲突
--习题
-(c)散列:散列函数
--习题
-(d1)散列:排解冲突(1)
--习题
-(d2)散列:排解冲突(2)
--习题
-(e)桶/计数排序
--习题
-本章测验
--本章测试
-(a1)需求与动机
--习题
-(a2)基本实现
--习题
-(b1)完全二叉堆:结构
--习题
-(b2)完全二叉堆:插入与上滤
--习题
-(b3)完全二叉堆:删除与下滤
--习题
-(b4)完全二叉堆:批量建堆
--习题
-(c)堆排序
--习题
-(xa1)左式堆:结构
--习题
-(xa2)左式堆:合并
--习题
-(xa3)左式堆:插入与删除
-本章测验
--本章测试
-(a)ADT
--习题
-(b1)串匹配
--习题
-(b2)蛮力匹配
--习题
-(c1)KMP算法:从记忆力到预知力
--习题
-(c2)KMP算法:查询表
--习题
-(c3)KMP算法:理解next[]表
--习题
-(c4)KMP算法:构造next[]表
--习题
-(c5)KMP算法:分摊分析
--习题
-(c6)KMP算法:再改进
-(d1)BM_BC算法:以终为始
-(d2)BM_BC算法:坏字符
-(d3)BM_BC算法:构造bc[]
-(d4)BM_BC算法:性能分析
-(e1)BM_GS算法:好后缀
-(e2)BM_GS算法:构造gs表
-(e3)BM_GS算法:综合性能
-(f1)Karp-Rabin算法:串即是数
-(f2)Karp-Rabin算法:散列
-本章测验
--本章测试
-(a1)快速排序:算法A
-- 12a1-5: 实例
--习题
-(a2)快速排序:性能分析
--习题
-(a4)快速排序:变种
-(b1)选取:众数
-(b3)选取:通用算法
--习题
-(c1) 希尔排序:Shell序列
--习题
-(c2)希尔排序:逆序对
-本章测验
--本章测试