摘要:"LeetCode Contest 166" 第一次知道LeetCode 也有比赛。 很久没有打过这种线上的比赛,很激动。 直接写题解吧 "第一题" 很弱智 "第二题" 也很简单的,我先排个序。 但是在用c++的快排的时候,被坑了,我一直的习惯是写自定义比较函数,没有写运算符重载,不知道为什么一直R 阅读全文
posted @ 2019-12-08 12:35 Shendu.CC 阅读 (22) 评论 (0) 编辑
摘要:前言 由于需要做一个快速匹配敏感关键词的服务,为了提供一个高效,准确,低能耗的关键词匹配服务,我进行了漫长的探索。这里把过程记录成系列博客,供大家参考。 在一开始,接收到快速敏感词匹配时,我就想到了 KMP 翻译过来叫“看毛片“的算法,因为大学的时候就学过它。听说到它的效率非常高。把原本字符串匹配效 阅读全文
posted @ 2019-08-05 14:36 Shendu.CC 阅读 (3214) 评论 (1) 编辑
摘要:.net core 于 10月17日发布了 "ASP.NET Core 2.2.0 preview3" ,在这个版本中,我看到了一个很让我惊喜的新特性: HTTP Client Performance Improvements ,而且在Linux上性能提升了60% ! 之前就一直苦于 HttpCli 阅读全文
posted @ 2018-11-02 09:13 Shendu.CC 阅读 (4074) 评论 (16) 编辑
摘要:前言: 上一篇提到了特征提取,或者叫做降维。在文本分类中,特征提取算法的优劣对于文本分类的结果具有非常大的影响。 所以选择效果好的特征提取算法是文本分类前中很重要的步骤。于是这篇就对卡方检验做一个介绍。这是一个效果很好的特征提取方法。 之前对卡方检验做过介绍:卡方检验是通过对特征进行打分然后排序,选 阅读全文
posted @ 2018-04-09 17:55 Shendu.CC 阅读 (8262) 评论 (4) 编辑
摘要:前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移。因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3.6.0 ,PanGu分词也是对应Lucene3.6.0版本的。不过好在Lucene.net 已经有 阅读全文
posted @ 2018-02-08 14:26 Shendu.CC 阅读 (3017) 评论 (52) 编辑
摘要:"题目" 题意:比较两个版本的大小 题解: 阅读全文
posted @ 2020-01-22 18:49 Shendu.CC 阅读 (1) 评论 (0) 编辑
摘要:"题目" 题意:就是给你一个数组,让你输出排好序后,相邻元素差值最大的那个差值。 题解:首先,当然我们可以用快排,排完序之后,遍历一遍数组,就能得到答案了。但是快速排序的效率是O(n logn),不是题目要求的线性效率,也就是O(n)的效率。 那么诸多排序算法中,也是由线性效率的排序算法,当然这些算 阅读全文
posted @ 2020-01-22 18:47 Shendu.CC 阅读 (3) 评论 (0) 编辑
摘要:"题目" 题意:一个数组,相邻的元素不相等,让你找出这个数组的驼峰,驼峰就是这个元素比相邻的元素都大。 题解:二分查找,如果你发现某个元素比左边相邻的元素小,那么左边一定存在驼峰,同理,右边也是。通过这个规律就可以二分了。 阅读全文
posted @ 2020-01-21 13:39 Shendu.CC 阅读 (3) 评论 (0) 编辑
摘要:"题目" 题意:寻找两个链表重合部分的起始点。 题解:计算两个链表的长度,从到最后一个点距离相等的点,开始比较就可以了。 阅读全文
posted @ 2020-01-21 13:32 Shendu.CC 阅读 (2) 评论 (0) 编辑
摘要:"题目" 阅读全文
posted @ 2020-01-16 15:43 Shendu.CC 阅读 (2) 评论 (0) 编辑
摘要:"题目" 题意:给你一个BST,其中任意两个元素被交换过了,让你把交换的元素复原。 题解:BST的中序遍历是个有序的数组,那么两个元素被交换了,我们可以for循环一次找出这两个数字。从小到大遍历,维护一个值max,表示当前遍历元素的最大值。由于两个元素被交换了,所以max一定有一段时间是不变的,直到 阅读全文
posted @ 2020-01-16 15:42 Shendu.CC 阅读 (2) 评论 (0) 编辑
摘要:"题目" 题意:判断一个二叉树是否为 二叉搜索树BST 题解:所有思路都是去找二叉树中不满足BST性质的节点,找到了,就不符合,找不到就符合。那么怎么去找呢?我提供两种思想。 第一个是,BST的中序遍历是一个有序数组,所以把BST 中序遍历的结果拿出来,看看是不是有序的就可以了。很简单。那如果不让你 阅读全文
posted @ 2020-01-16 15:36 Shendu.CC 阅读 (3) 评论 (0) 编辑
摘要:"题目" 题意: 给你三个字符串s1,s2,s3 问你s3是否由s1和s2互相交叉组成。也就是说s3中的某个子序列是s1,剩下的字符串组成s2。 第一眼感觉是最长公共子序列,一开始的想法是先把s3和s1求最长公共子序列,然后从s3的部分中把s1抠出来,在再和s2求最长公共子序列。 但是这种做法很麻烦 阅读全文
posted @ 2020-01-15 14:43 Shendu.CC 阅读 (6) 评论 (0) 编辑
摘要:"题目" 阅读全文
posted @ 2020-01-07 14:06 Shendu.CC 阅读 (7) 评论 (0) 编辑
摘要:"题目" 第一发超时了,可以用一个数组表示状态,所有相等长度的区间,它的BST数目是一样的。 阅读全文
posted @ 2020-01-07 14:03 Shendu.CC 阅读 (4) 评论 (0) 编辑