随笔分类 - 数据结构与算法(java版)
刚开始学习数据结构与算法时,用的是严蔚敏老师的数据结构(c语言)版,很是吃力。一是这本书上的代码都是伪代码,没有可实现性;二是书本比较难懂;机缘巧合之下发现了韩顺平老师的视频《数据结构与算法》java版,帮助了我学习数据结构,所以在此把相关的知识总结出来,希望可以帮到其他人,谢谢!
摘要:最小生成树 最小生成树的定义:最小生成树是在一个给定的无向图G(V,E)中求一颗树T,使得这棵树拥有图G中所有顶点,且所有边都是来自图G中的边,并且满足整棵树的边权之和最小。 最小生成树三个性质: 最小生成树是树,因此其边数等于顶点数减一,且树内一定不会有环 对给定的图,其最小生成树可以不唯一,但边
阅读全文
摘要:在我们开始介绍赫夫曼树之前,我们先带入一个情景。你想发送一个文件给你朋友,但是文件太大,所以你决定将文件压缩,变小再发送。你有没有考虑文件是怎么压缩呢?作为程序员,没有考虑过这里使用的什么算法呢?赫夫曼编码就是其中的一种解决方法。 在介绍赫夫曼编码之前,我们先介绍先导知识——赫夫曼树 赫夫曼树 赫夫
阅读全文
摘要:在java中,我们常见的查找有四种 1. 顺序查找,也叫线性查找 2. 二分查找,也叫折半查找 3. 插值查找 4. 斐波那契查找 我们将一一介绍着四种查找方式的思想以及程序的实现。 1.顺序查找 顺序查找 的查找过程为:从数组的第一个元素开始,逐个将要查找的关键字和数组中的元素进行比较,若存在相等
阅读全文