- 博客(4)
- 收藏
- 关注
原创 散列算法(Hashing)
快速查找数据是一种非常普遍且重要的诉求,链表、二叉树能分别在N和log(N)的时间复杂度下实现查找操作。有没有一种能在常数时间复杂度下进行查找的算法呢?我们用键值对key和value。即每一个数据都对应一个key)来表示数据。将key转换为数组下标并将键值对储存在对应的数组索引下 ,在数组中实现常数时间的查找,这是散列算法的主要思想。理想情况下,不同的key转换为不同的数组下标,但这大大超出我们的能力范围。所以我们不得不考虑处理两个或者多个key转换为相同的数组下标的情况(这种情况称为冲突)。
2023-10-12 22:12:38
269
原创 最小生成树之普里姆算法C++实现(prim)
该算法使用邻接表来表示图,邻接表在稀疏图的情况下具有更低的空间复杂度,并且遍历邻接表的时间复杂度更低。使用了C++自带的优先队列(堆)来选择下一个最短路径,减少查找最短路径的时间。读入一个邻接矩阵,输出其最小生成树的路径花费。
2023-05-21 01:40:42
513
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人