- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 Trie字典树Java实现
又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 ——百度百科基本思路字符串存储:Trie树是从根节点开始(0号节点),依次查询字符串中的每个字符,若已经在树中存在,则查询下一个字符;若不存在则创建这个节点。当全部字符查询完成之后,在最后一个节点做一个标记表明这里存在.
2021-02-07 11:14:29 188
原创 KMP算法
KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普拉特操作(简称KMP算法)。KMP算法的核心是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是通过一个next()函数实现,函数本身包含了模式串的局部匹配信息。KMP算法的时间复杂度O(m+n)如#mermaid-svg-rpoUN1nLospfOXsX .label{font-family:'trebuchet ms', .
2020-12-30 20:44:50 203
原创 Mac/Linux下使用vim出现E45: ‘readonly‘ option is set (add ! to override)错误
在Mac/Linux系统下使用vim修改配置文件时经常出现以下错误:E45: ‘readonly’ option is set (add ! to override)使用!q强行退出,然后出现以下信息:[No write since last change]/bin/sh: wq: command not foundshell returned 127Press ENTER or type command to continue这通常是权限不够引起的,解决方法是:sudo vim XXX修
2020-12-20 19:32:33 3444 1
原创 二分查找的实现及边界问题讨论
二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法,前提是数据结构必须先排好序,可以在数据规模的对数时间复杂度内完成查找。但是,二分查找要求线性表具有有随机访问的特点(例如数组),也要求线性表能够根据中间元素的特点推测它两侧元素的性质,以达到缩减问题规模的效果——LeetCode官网二分查找是一个原理比较简单但是实现起来有很多细节的问题,因此写点笔记记录一下。二分查找实际上是这样一个问题,假设有一个区间[lo,hi],存在一个节点x或者一个范围X,使得[lo,x]上的点.
2020-10-31 12:54:15 396
原创 论文阅读-关键词歧义性对广告的影响
论文题目:Examining the Impact of Keyword Ambiguity on Search Advertising Performance :A topic Model Approach来源于MIS Quarterly (管理信息系统季刊)作者是天普大学福克斯商学院的Jing Gong(Fox School of Business,Temple University)和卡内基梅隆大学的Vibhanshu Abhishek 和Beibei Li文章介绍摘要本篇文..
2020-10-15 10:21:03 600 1
原创 Java-向上转型和向下转型
Java中的向上转型和向下转型Cycle是基类,Bicycle和Unicycle是导出类。向上转型也就是导出类转型为基类,不再拥有自有的方法,但是保留了基类有的方法,而且在调用方法时实际上是调用了覆盖之后的方法。有一个好处就是在实现很多不同导出类的时候,可以形成统一的形式,缺点就是导出类失去了自身特有的方法。向下转型就是基类强行转化成导出类。一个应用就是当我们出于某种原因,将很多导出类统一向上转型,但是在实现之后,又需要调用特有的方法,因此采用向下转型。#mermaid-svg-Bd44jO7d7S
2020-10-15 10:02:21 117
原创 Mac下jupyter notebook 出现“服务似乎挂掉,但会立刻重启”的解决方法
解决mac系统下jupyter notebook 运行神经网络出现“服务似乎挂掉了 但会立刻重启”的问题
2020-03-31 22:17:37 4717 5
原创 Python 列表(list)、字典(dict)、字符串(string)常用操作
原文来自githubpython内置类型1、list:列表(即动态数组,C++标准库的vector,但可含不同类型的元素于一个list中)a = [“I”,“you”,“he”,“she”] 元素可为任何类型。下标:按下标读写,就当作数组处理,以0开始,有负下标的使用0第一个元素,-1最后一个元素,-len第一个元素,len-1最后一个元素.取list的元素数量:len...
2020-03-06 09:25:16 470
原创 谁动了我的首页-首页篡改修改方法
常在河边走哪能不湿鞋在我们下载各种良(po)心(jie)软件或者不经意间访问不可描述的网站的时候,常常会发现我们习惯的首页不见了!取而代之的是跟狗皮膏药一样糊在我浏览器上的某些厂商优(e)雅(xin)的界面。我曾尝试过某度上的各种方法,包括号称能保卫首页但是比首页篡改更粘人的063(我曾花费一个晚上修改首页,然后花一天时间卸载063),均告失败。其实保卫首页非常简单。...
2020-02-29 18:39:20 307
原创 pandas进行数据选取
pandas官方文档pandas中有两种基本的数据类型,Series和DataFrame,前者是一维的,后者是二维甚至多维的。首先生成一个DataFrame对象,这里用到了numpy中的生成随机数函数random.randn()。行名和列名通过index和column来定义。import numpy as npimport pandas as pddates=pd.date_range...
2020-02-28 10:34:10 330
原创 pandas读取csv文件
具体可查看官方文档先引入pandasimport pandas as pd1、简单读取文件data=pd.read_csv('demo.csv')2、读取限定行有的时候csv文件太大,想快速查看一下数据内容,就先读取一部分data=pd.read_csv('demo.csv',nrows=1000)3、读取限定列data=pd.read_csv('demo.csv',use...
2020-02-27 11:07:15 1807
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人