算法学习笔记

这篇博客详细记录了算法学习的过程,包括二叉树的增删查、哈夫曼编码、排序算法、图论算法如欧拉回路、最短路径等。还涵盖了堆、散列、AVL树、红黑树、动态规划和回溯算法等,并讨论了分治、动态规划、贪婪算法等设计技巧。同时提到了一些实际应用,如毒药检测和一致性Hash问题。
摘要由CSDN通过智能技术生成

18.5.5 二叉树的删除新增查找最小最大

哈夫曼编码 排序 斐波那契数列 栈实现计算器 栈实现中序表达式转后序。

18.5.6

堆(优先队列) 散列 图论 深度优先 红黑树

18.5.26

图论算法:

{

欧拉回路:用一只笔画出不重复的线通过所有的顶点。

深度广度优先算法。

无向有向图无圈有圈图 拓扑排序

网络流问题:对应交通流量或者水管里的流水,是可以通过边来传递的

最短路径算法:dijkstra算法

最小生成树:kruskal算法、prim算法。对应房子里用最短路径铺电线。

np-完全性问题

}

18.6.28

{

树、

avl树、

二叉树、

B树、

红黑树、

伸展树

}

二叉树节点的增删操作

 平衡树的初步了解

avl树的增加删除细节编写

 树的常见算法题:树的深度, 树的(叶子)节点数,两个节点的最低公共节点

开始学习堆——优先队列。目前概念是主要用来计算出优先级(排序?),和树有点类似。但是不适合用来查找某个具体的值,因为需要使用线性遍历来查找。

{

二叉堆的基本操作

左式堆

斜堆

二项队列

}

堆的应用和基本操作了解。

堆的上滤和下滤的操作。

算法设计技巧:

1、分治算法

2、动态规划

3、随机化算法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值