数据结构
最难熬的时候才是修行
一个想画设计图纸的搬砖工人
展开
-
堆(优先队列)
文章目录一、优先队列的基本概念?二、一些简单的实现三、二叉堆1.二叉堆简介2.二叉堆的两种性质 一、优先队列的基本概念? 优先队列是一种应该满足一下两种操作的数据结构: 1.插入(insert),显然这是往队列中存放元素的 2.删除最小者,体现出优先。 优先队列应用的简单举例: 1.操作系统的任务调度 2.排序(见第七章,即下周分享的内容) 3.用于贪婪算法(见第十章)的实现,该算法通过反复求出最小元来进行操作。 二、一些简单的实现 有几种明显的方法可以实现优先队列: 1.使用一个简单的链表,在表头以O(原创 2020-10-26 19:12:05 · 784 阅读 · 0 评论 -
散列
散列(可以边想hashmap边理解) 什么是散列: 理想的散列表数据结构是一个包含一些项的具有固定大小的数组。散列函数的作用是使项均匀的分布到散列中。 散列函数 每个关键字被映射到从0到TableSIze-1这个范围中的某个数,并且被放到适当的单元中。这个映射就叫做散列函数。理想情况下,散列函数计算简单,并且应该保证任何两个不同的关键字映射到不同的单元。 这些就是山裂的基本想法。剩下的事情就是当散列冲突的时候应该做什么以及如何确定散列表大小。 散列冲突解决的两种方法 1、分离链接法: ...原创 2020-10-19 21:22:29 · 403 阅读 · 1 评论