![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java算法
文章平均质量分 78
my_sunshine_y
这个作者很懒,什么都没留下…
展开
-
标准trie树的Java实现
trie树也叫字典树,网上各种资料和解释都是说它的效率比哈希表要高,在这里我先不做说明和比较,在后续的文章中我会对哈希算法、哈希表、hashmap都会有介绍,这里主要是搞清楚这个trie树的基本原理和具体实现。 trie树的基本原理就是拿空间来换时间,什么个意思呢,现在以几个英文单词为例,"abc","abcde","acd","ecd",我想要去查找他们,最原始的办法就是原创 2016-01-11 16:29:04 · 1054 阅读 · 0 评论 -
trie树实现模糊查找
在上一篇博客里简单的说了一下标准trie树的建立,本来说要做一个小型词典来用试试,结果这段时间有事就一直耽误到现在,今天抽了一点时间看看,首先我想到的是在我们输入某些单词的前面几个字母的时候下面的提示,那是trie树的模糊查找,便想了想去实现这个功能。 要想实现模糊查询,首先一点是得找到前缀所在的节点,例如我想查找以ac开头的单词,那么在建立了trie树之后就得在trie树中首先找原创 2016-01-20 16:25:51 · 4438 阅读 · 2 评论 -
排序算法之-插入排序
插入排序的原理比较简单跟冒泡排序差不多,基本思想是将数组中的i个值插入到已经排好序的前i-1(i>0)个数中,基本的步骤是先取i-1的值,若A[i-1]>A[i]说明A[i]应该往前排,那么就让A[i]=A[i-1],继续往前推,如果一直满足条件就一直将数组的值往后推,直到i伪代码如下:for j=1 to A.length key=A[i] j=i-1原创 2016-03-21 23:40:52 · 1001 阅读 · 0 评论 -
剑指offer——面试题3二维数组
本系列的文章是作者在读何海涛所著的《剑指offer——名企面试官精讲经典面试题》时将里面的一些题用java做实现,以供大家参考学习。 面试题3:在一个二维数组中,每一行都是从上到下递增,每一列都是从左到右递增,设计一个函数实现输入一个这样的二维数组和一个数查找其是否存在。 分析:在二维数组中查找是否存在某一个数,遍历是绝对可行的但问题是实在是太慢了,实际上可以这样来思原创 2016-03-16 22:24:59 · 563 阅读 · 0 评论