会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
瞪着太阳的乌鸦
The man shoud know when to leave the party!
博客园
首页
新随笔
联系
订阅
管理
2015年9月24日
我的搜索优化记录(一):中文分词优化IK Analyzer
摘要: 搜索绝对不仅仅是搭起框架,跑出结果就完成的工作,之后分词、排序等等的优化才是重头戏。先交代下背景:这个搜索是我一个人负责搭建并优化的项目,主要索引对象为歌曲、歌手MV等等。使用技术:Lucene、IK_Analyzer既然这篇博客是关于中文分词的优化,那么先看我现在的搜索有什么问题存在:分词不准确 ...
阅读全文
posted @ 2015-09-24 15:27 @瞪着太阳的乌鸦
阅读(9089)
评论(2)
推荐(5)
2015年9月17日
细说Lucene源码(一):索引文件锁机制
摘要: 大家都知道,在多线程或多进程的环境中,对统一资源的访问需要特别小心,特别是在写资源时,如果不加锁,将会导致很多严重的后果,Lucene的索引也是如此,lucene对索引的读写分为IndexReader和IndexWriter,顾名思义,一个读,一个写,lucene可以对同一个索引文件建立多个Inde...
阅读全文
posted @ 2015-09-17 11:13 @瞪着太阳的乌鸦
阅读(4865)
评论(2)
推荐(0)
2015年9月14日
图(一):无向图的深度优先遍历、广度优先遍历及连通分量
摘要: 无向图:一些关于图的定义:图是由一组顶点和一组能够将两个顶点相连的边组成。连通图:如果从任意一个顶点都存在一条路径到达另一个任意顶点,就称为连通图,一个非连通图由若干连通的部分组成,都称为极大连通子图。无向图:即连接两个顶点的边是没有方向的。无向图的数据结构:使用邻接表来表示图:如上图所示,使用一个...
阅读全文
posted @ 2015-09-14 09:55 @瞪着太阳的乌鸦
阅读(28972)
评论(1)
推荐(3)
2015年9月10日
查找(二):彻底理解红黑树和平衡查找树
摘要: 平衡查找树在之前的二分搜索和二叉查找树中已经能够很好地解决查找的问题了,但是它们在最坏情况下的性能还是很糟糕,我们可以在查找二叉树中,每次动态插入或删除某结点时,都重新构造为完全二叉树,但是这样代价太大,所以就引出了平衡查找树。详细的数学定义就不给出了,因为既不直观也记不住,直接给出一个平衡二叉树的...
阅读全文
posted @ 2015-09-10 10:42 @瞪着太阳的乌鸦
阅读(5003)
评论(2)
推荐(1)
2015年9月9日
查找(一):二分查找和二叉查找树
摘要: 二分查找二分查找的原理很简单:在一个有序数组中(本文讨论的是升序,降序同理)从数组中间的元素开始,如果A[mid]大于被查找元素key,那么就在A[0]到A[mid-1]中查找,反之在A[mid++]到A[A.lenth - 1]中查找。从这看来,递归的意味又很浓啊,当然也可以用非递归的方式,效率更...
阅读全文
posted @ 2015-09-09 11:23 @瞪着太阳的乌鸦
阅读(4839)
评论(0)
推荐(0)
2015年9月7日
排序算法(四):优先队列、二叉堆以及堆排序
摘要: 优先队列我们经常会碰到下面这种情况,并不需要将所有数据排序,只需要取出数据中最大(或最小)的几个元素,如排行榜。那么这种情况下就可以使用优先队列,优先队列是一个抽象数据类型,最重要的操作就是删除最大元素和插入元素,插入元素的时候就顺便将该元素排序(其实是堆有序,后面介绍)了。二叉堆二叉堆其实是优先队...
阅读全文
posted @ 2015-09-07 12:35 @瞪着太阳的乌鸦
阅读(2626)
评论(2)
推荐(0)
2015年9月6日
排序算法(三):快速排序和三向快速排序
摘要: 快速排序快速排序是一种分治的排序算法。它将一个数组分成两个子数组,将两部分独立的排序。快速排序和归并排序是互补的:归并排序将数组分成两个子数组分别排序,并将有序的子数组归并以将整个数组排序;而快速排序将数组排序的方式则是当两个子数组都有序时整个数组也就自然有序了。在归并排序中,递归调用发生在处理整个...
阅读全文
posted @ 2015-09-06 15:37 @瞪着太阳的乌鸦
阅读(2392)
评论(0)
推荐(1)
2015年9月5日
排序算法(二):归并排序
摘要: 归并排序归并排序基本的操作是合并两个已排序的数组,如下面的例子:A:{1,2,4,7}B:{2,2,5,9}第一步:比较A[0]和B[0],A[0] mid) a[k] = b[j++]; //第二个有序子数组已经遍历完 el...
阅读全文
posted @ 2015-09-05 14:43 @瞪着太阳的乌鸦
阅读(2048)
评论(0)
推荐(1)
2015年9月4日
排序算法(一):选择排序、插入排序和希尔排序
摘要: 基本排序算法
阅读全文
posted @ 2015-09-04 18:53 @瞪着太阳的乌鸦
阅读(38680)
评论(3)
推荐(1)
2015年6月18日
Ternary Search Tree 应用--搜索框智能提示
摘要: 前面介绍了Ternary Search Tree和它的实现,那么可以用Ternary Search Tree来实现搜索框的只能提示,因为Ternary Search Tree的前缀匹配效率是非常高的,总体思路如下(其中很多可以根据自己的需要修改,我只是写出我的做法):比如搜索歌曲时智能提示:建立Te...
阅读全文
posted @ 2015-06-18 14:29 @瞪着太阳的乌鸦
阅读(732)
评论(1)
推荐(0)
下一页
公告