- LeetCode 673. Number of Longest Increasing Subsequence (Java版; Meidum)
littlehaes
字符串动态规划算法leetcode数据结构
welcometomyblogLeetCode673.NumberofLongestIncreasingSubsequence(Java版;Meidum)题目描述Givenanunsortedarrayofintegers,findthenumberoflongestincreasingsubsequence.Example1:Input:[1,3,5,4,7]Output:2Explanatio
- 力扣SQL仅数据库(570-579)
朵&朵
数据库leetcodesql
570.至少有5名直接下属的经理需求:编写一个解决方案,找出至少有五个直接下属的经理数据准备:CreatetableIfNotExistsEmployee(idint,namevarchar(255),departmentvarchar(255),managerIdint)TruncatetableEmployeeinsertintoEmployee(id,name,department)valu
- 一个SQL查询出表结构
初秋和
sql数据库mysql
selecttable_schemaas“数据库”,table_nameas“表名”,table_rowsas“记录数”,truncate(data_length/1024/1024,2)as“数据容量(MB)”,truncate(index_length/1024/1024,2)as“索引容量”frominformation_schema.tableswheretable_schema=‘数据库
- openGauss闪回恢复
Gauss松鼠会
openGauss经验总结服务器数据库gaussdbopenGauss
误删除不用怕,openGauss闪回恢复帮你搞定下面主要从闪回查询、闪回表、闪回DROP/TRUNCATE方面进行演示。闪回恢复功能是数据库恢复技术的一环,可以有选择性的撤销一个已提交事务的影响,将数据从人为不正确的操作中进行恢复。基于MVCC多版本的数据恢复(仅支持Ustore):适用于误删除、误更新、误插入数据的查询和恢复,用户通过配置旧版本保留时间,并执行相应的查询或恢复命令,查询或恢复到指
- TRUNCATE 和 DELETE的区别
Harmon-x
数据库数据库
TRUNCATE和DELETE的区别条件删除事务回滚清理效率触发器增长列高水位重置条件删除DELETE是可以带WHERE的,所以支持条件删除;而TRUNCATE只能删除整个表。事务回滚由于DELETE是数据操作语言(DML-DataManipulationLanguage),操作时原数据会被放到rollbacksegment中,可以被回滚;而TRUNCATE是数据定义语言(DDL-DataDefi
- GreatSQL执行Update失败案例分析
GreatSQL社区
GreatSQLMySQL
GreatSQL执行Update失败案例分析一问题概述业务反馈在应用核心库的用户基本信息表执行部分update命令失败,报错如下:updatexxx.xxx_staffbasicinfosetstaffidstatus='04’wherestaffidin(select*fromduyuanyu.tmp_d_xiaoyuan)>1265Datatruncatedforcolumn'NOTMODST
- GreatSQL执行Update失败案例分析
GreatSQL社区
GreatSQLMySQL
GreatSQL执行Update失败案例分析一问题概述业务反馈在应用核心库的用户基本信息表执行部分update命令失败,报错如下:updatexxx.xxx_staffbasicinfosetstaffidstatus='04’wherestaffidin(select*fromduyuanyu.tmp_d_xiaoyuan)>1265Datatruncatedforcolumn'NOTMODST
- 力扣sql刷题系列(三)
南潇如梦
面试leetcodesql算法
618.学生地理信息报告CreatetableIfNotExistsStudent(namevarchar(50),continentvarchar(7))TruncatetableStudentinsertintoStudent(name,continent)values('Jane','America')insertintoStudent(name,continent)values('Pasc
- Oracle只读表
zha_sir
Oracleoracle只读
Oracle只读表能阻止表上所有的DML操作(truncate/insert/update/delete)SQL>createtablet_zhasirasselect*fromdba_objectswhererownumaltertablet_zhasirreadonly;Tablealtered.--设置表为读写状态SQL>altertablet_zhasirreadwrite;Tableal
- C#检测目标软件是否安装
我们要发财了
c#microsoft开发语言
C#检测目标软件是否安装代码运行原理:查找注册表是否有包含目标软件关键词的键方法1:RegistryKeyregKey=Registry.LocalMachine;//注册表指定路径RegistryKeyregSubKey=regKey.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall");//取得指定路径键值数组st
- 重头开始嵌入式第二十一天(Linux系统编程 文件相关函数)
FLPGYH
vimlinuxc语言
目录1.getpwuid2.getpwnam3.getgrgid4.symlink在Linux和类Unix系统中,创建软链接(符号链接)的常用指令是ln-s。5.remove6.rename7.link8.truncate9.perror10.strerror11.error1.makefile2.gdbstrtok1.getpwuidgetpwuid函数是C语言标准库中的一个函数,用于通过用户I
- 力扣刷题学习SQL篇——1-12 树节点(使用行转列union/条件判断case when)
萌新贤的日常
力扣题目sql数据库语句leetcode学习sql
力扣刷题学习SQL篇——1-12树节点(使用行转列union/条件判断casewhen)1、题目2、解法知识补充1、题目题目链接:https://leetcode.cn/problems/tree-node/submissions/SQL架构CreatetableIfNotExistsTree(idint,p_idint)TruncatetableTreeinsertintoTree(id,p_i
- Django模板语法和ModelForm
Q_M_Y_Y
djangodjangopython
ModelForm或者Form组件的作用:生成HTML标签对POST过来的表单数据进行验证直接将数据保存到数据库获取表单错误信息Django的管道操作模板时间格式化显示{{item.event_start|date:“Y-m-dH:i:s”}}{{bio|truncatewords:“30”}}{{my_list|first|upper}}{{name|lower}}Mysql时间转Python时
- SQL server分页和行转列
Zhen (Evan) Wang
数据库开发语言sql
--CreatetablesifOBJECT_ID('TestValues','U')isnotnullbegindroptableTestValuesendCreatetableTestValues(Idintidentity(1,1),Namenvarchar(255),Tagvarchar(25))truncatetableTestValuesdeclare@maxRowsint=100de
- Mysql 查询数据库或数据表中的数据量以及数据大小_mysql 获取查询记录的 数据大小
m0_74932057
程序员mysql数据库
许多数据库的元数据都是存储在mysql中的,例如hive、startrockes,因此可以通过mysql中的“information_schema.TABLES”表来查询对应数据库或对应数据表的具体信息。1、查询各个数据库中的数据条数和数据大小SELECTTABLE_SCHEMAAS'数据库',sum(table_rows)AS'记录数',sum(TRUNCATE(data_length/1024
- [mysql][sql]mysql查询表大小
awonw
mysqlmysqlsql
selecttable_schemaas'数据库',table_nameas'表名',table_rowsas'记录数',truncate(data_length/1024/1024,2)as'数据容量(MB)',truncate(index_length/1024/1024,2)as'索引容量(MB)'frominformation_schema.tableswhere1=1andtable_s
- MySQL删除表数据、清空表命令(truncate、drop、delete 区别)
寻求出路的程序媛
MySQL数据库后端开发mysql数据库
一、MySQL清空表数据三种方法1.1清空表数据:truncatesql命令#清空多张表、库中所有表的数据truncatetabletable_name1,table_name2,...;#清空单张表的数据truncatetabletable_name;注意:truncate会删除表中的所有数据、释放空间,但是保留表结构只能操作表,不能与where一起使用truncate删除操作立即生效,原数据不
- 解决org.apache.http.TruncatedChunkException: Truncated chunk
lingFei_y
解决问题java
报错原因我碰到报错原因主要是因为接口返回的数据量过大,在高并发下,会有丢包的情况,导致这个问题。之前我找方法是把Nginx缓存关掉,我试了一下没有太大的作用。解决方法开启Nginxjson压缩,这个方法解决我的问题,解决方法:点击链接https://blog.csdn.net/lingFei_y/article/details/115002302
- 生信|通过manifest文件批量构建软链接
王诗翔
从GDC下载的数据都被放在UUID目录下,该目录名非常乱,为了有效的读取文件,可以采用软链接的形式。命令:tail-n+2/public/home/liuxs/biodata/gdc/wes/gdc_manifest.2018-10-17.txt|\head-n5|\awk'BEGIN{OFS="\t";}{info=$2;gsub(/\.bam/,"",info);system("ln-s/pu
- python爬虫爬取小说
脚大江山稳
python爬虫windows
importrequestsimportreimportos#假设我们要检查的文件路径filename='1.txt'#使用os.path.exists()函数检查文件是否存在ifos.path.exists(filename):print(f"文件'{filename}'存在。")withopen(filename,"r+")asfile:file.truncate(0)#从文件开头(位置0)开
- 通过Jmeter压测存储过程
.咖啡加剁椒.
软件测试jmeter软件测试自动化测试功能测试程序人生职场和发展
一、存储过程准备:1、建立一个空表:CREATETABLEtest_data(idNUMBER,nameVARCHAR2(50),ageNUMBER);2、建立一个存储过程:CREATEORREPLACEPROCEDUREinsert_test_data(nINNUMBER)ASBEGIN--EXECUTEIMMEDIATE'truncatetabletest_data';FORiIN1..nLO
- python 一段专门用来做新旧文件夹迁移的代码 (源文件夹的新文件覆盖目标文件夹的旧文件,若旧文件不存在,则直接拷贝)
shimly123456
python服务器linux
如下(这段代码来自CHATGPT)importosimportshutildefsync_files_with_structure(src_dir,dest_dir):"""Syncfilesfromsourcedirectorytodestinationdirectory,consideringsubdirectorystructures.Newerfileswilloverwriteolder
- 长拖尾数据的采样方法
武小胖儿
数据分析机器学习算法人工智能数据处理
以下内容来自于ChatGPT长拖尾数据的采样方式:对于具有长拖尾(长尾)分布的数据,通常使用传统的随机抽样方法可能不太适用,因为这样的分布意味着有一些极端值(outliers)会对整体分布产生较大影响。为了更有效地对长拖尾分布的数据进行取样,可以考虑以下一些方法:截断抽样(TruncatedSampling):选择数据中的一个截断范围,只保留在这个范围内的数据。这样可以排除极端值对样本的影响。截断
- orcle数据库第一天学习 注意点
dwwl
索引会提高查询效率,但是会降低增删改效率,truncat会将表的索引先删除掉,所以效率比较高delete可以回滚,truncate不能回滚创建sequence时,如果使用缓存,可能出现断层,(先从文件取出来值放在内存中,取出来没用重启后,按照文件中的值接着增长)日期变换时,注意yyyy-mm--dd不区分大小写//日期转换函数较为常用null值和数字相加时,还是为null,nvl()空值函数cou
- Lua string.gsub 模式匹配
编程学渣
Lua
网上找了一些关于gsub模式匹配资料,但是都不全面细致,所以打算翻译官方文档。以下内容翻译自《Lua5.3ReferenceManual》6.4.1-Patterns。------我是一条分割线------Lua中的模式匹配用正则表达式来描述,它被用于string.find,string.gmatch,string.gsub,和string.match.匹配一种模式。本结将讲述它的语法和模式字符串
- MySQL删除表三种操作(delete、truncate、drop的区别)
燃灯工作室
mysqloracle数据库
本文主要讲mysql中三种删除表的操作,delete语句、truncate语句以及drop语句的区别一.关联与区别1.区别delete、truncate和drop是用于删除数据库中的数据或对象的SQL语句,但它们有不同的功能和用法。delete语句:delete语句用于从表中删除特定的行或符合特定条件的行。delete语句是一种有条件的删除操作,它可以通过WHERE子句指定特定的条件来选择要删除的
- SQL世界之命令语句Ⅴ
阳阳大魔王
SQLsql数据库笔记经验分享
目录一、SQLCREATEINDEX语句1.SQLCREATEINDEX语句2.SQLCREATEINDEX语法3.SQLCREATEUNIQUEINDEX语法4.SQLCREATEINDEX实例二、SQL撤销索引、表以及数据库1.SQLDROPINDEX语句2.SQLDROPTABLE语句3.SQLDROPDATABASE语句4.SQLTRUNCATETABLE语句三、SQLALTERTABLE
- R语言学习之基本文字处理代码
佐博伊森
...getwd()setwd("")is()rm()q()字符串的处理常用代码切割strsplit()子集substr()大小写toupper()tolower()文字连接paste()paste0()替代文字gsub()去除前后空格strtrim()举例strsplit("hello,world",",")substr("hello,world",start=2,stop=4)toupper(
- hive-字符串查找函数 instr和locate
小哇666
#hivehive
找不到都是返回0字符串查找函数:instr语法:instr(stringstr,stringsubstr)返回值:int说明:返回字符串substr在str中首次出现的位置举例:hive>selectinstr('abcdf','df')fromtest;OK4字符串查找函数:locate语法:locate(stringsubstr,stringstr[,intpos])返回值:int说明:返回字
- Mysql清空表(TRUNCATE)与删除表中数据(DELETE)的区别
Liuzz25
TRUNCATEtruncate`table_name`直接清空表格,速度快。不写服务器log,效率高。不激活trigger(触发器),但是会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。DELETEdeletefrom`table_name`deletefrom`table_name`where`condition_sql`逐条
- windows下源码安装golang
616050468
golang安装golang环境windows
系统: 64位win7, 开发环境:sublime text 2, go版本: 1.4.1
1. 安装前准备(gcc, gdb, git)
golang在64位系
- redis批量删除带空格的key
bylijinnan
redis
redis批量删除的通常做法:
redis-cli keys "blacklist*" | xargs redis-cli del
上面的命令在key的前后没有空格时是可以的,但有空格就不行了:
$redis-cli keys "blacklist*"
1) "blacklist:12:
[email protected]
- oracle正则表达式的用法
0624chenhong
oracle正则表达式
方括号表达示
方括号表达式
描述
[[:alnum:]]
字母和数字混合的字符
[[:alpha:]]
字母字符
[[:cntrl:]]
控制字符
[[:digit:]]
数字字符
[[:graph:]]
图像字符
[[:lower:]]
小写字母字符
[[:print:]]
打印字符
[[:punct:]]
标点符号字符
[[:space:]]
- 2048源码(核心算法有,缺少几个anctionbar,以后补上)
不懂事的小屁孩
2048
2048游戏基本上有四部分组成,
1:主activity,包含游戏块的16个方格,上面统计分数的模块
2:底下的gridview,监听上下左右的滑动,进行事件处理,
3:每一个卡片,里面的内容很简单,只有一个text,记录显示的数字
4:Actionbar,是游戏用重新开始,设置等功能(这个在底下可以下载的代码里面还没有实现)
写代码的流程
1:设计游戏的布局,基本是两块,上面是分
- jquery内部链式调用机理
换个号韩国红果果
JavaScriptjquery
只需要在调用该对象合适(比如下列的setStyles)的方法后让该方法返回该对象(通过this 因为一旦一个函数称为一个对象方法的话那么在这个方法内部this(结合下面的setStyles)指向这个对象)
function create(type){
var element=document.createElement(type);
//this=element;
- 你订酒店时的每一次点击 背后都是NoSQL和云计算
蓝儿唯美
NoSQL
全球最大的在线旅游公司Expedia旗下的酒店预订公司,它运营着89个网站,跨越68个国家,三年前开始实验公有云,以求让客户在预订网站上查询假期酒店时得到更快的信息获取体验。
云端本身是用于驱动网站的部分小功能的,如搜索框的自动推荐功能,还能保证处理Hotels.com服务的季节性需求高峰整体储能。
Hotels.com的首席技术官Thierry Bedos上个月在伦敦参加“2015 Clou
- java笔记1
a-john
java
1,面向对象程序设计(Object-oriented Propramming,OOP):java就是一种面向对象程序设计。
2,对象:我们将问题空间中的元素及其在解空间中的表示称为“对象”。简单来说,对象是某个类型的实例。比如狗是一个类型,哈士奇可以是狗的一个实例,也就是对象。
3,面向对象程序设计方式的特性:
3.1 万物皆为对象。
- C语言 sizeof和strlen之间的那些事 C/C++软件开发求职面试题 必备考点(一)
aijuans
C/C++求职面试必备考点
找工作在即,以后决定每天至少写一个知识点,主要是记录,逼迫自己动手、总结加深印象。当然如果能有一言半语让他人收益,后学幸运之至也。如有错误,还希望大家帮忙指出来。感激不尽。
后学保证每个写出来的结果都是自己在电脑上亲自跑过的,咱人笨,以前学的也半吊子。很多时候只能靠运行出来的结果再反过来
- 程序员写代码时就不要管需求了吗?
asia007
程序员不能一味跟需求走
编程也有2年了,刚开始不懂的什么都跟需求走,需求是怎样就用代码实现就行,也不管这个需求是否合理,是否为较好的用户体验。当然刚开始编程都会这样,但是如果有了2年以上的工作经验的程序员只知道一味写代码,而不在写的过程中思考一下这个需求是否合理,那么,我想这个程序员就只能一辈写敲敲代码了。
我的技术不是很好,但是就不代
- Activity的四种启动模式
百合不是茶
android栈模式启动Activity的标准模式启动栈顶模式启动单例模式启动
android界面的操作就是很多个activity之间的切换,启动模式决定启动的activity的生命周期 ;
启动模式xml中配置
<activity android:name=".MainActivity" android:launchMode="standard&quo
- Spring中@Autowired标签与@Resource标签的区别
bijian1013
javaspring@Resource@Autowired@Qualifier
Spring不但支持自己定义的@Autowired注解,还支持由JSR-250规范定义的几个注解,如:@Resource、 @PostConstruct及@PreDestroy。
1. @Autowired @Autowired是Spring 提供的,需导入 Package:org.springframewo
- Changes Between SOAP 1.1 and SOAP 1.2
sunjing
ChangesEnableSOAP 1.1SOAP 1.2
JAX-WS
SOAP Version 1.2 Part 0: Primer (Second Edition)
SOAP Version 1.2 Part 1: Messaging Framework (Second Edition)
SOAP Version 1.2 Part 2: Adjuncts (Second Edition)
Which style of WSDL
- 【Hadoop二】Hadoop常用命令
bit1129
hadoop
以Hadoop运行Hadoop自带的wordcount为例,
hadoop脚本位于/home/hadoop/hadoop-2.5.2/bin/hadoop,需要说明的是,这些命令的使用必须在Hadoop已经运行的情况下才能执行
Hadoop HDFS相关命令
hadoop fs -ls
列出HDFS文件系统的第一级文件和第一级
- java异常处理(初级)
白糖_
javaDAOspring虚拟机Ajax
从学习到现在从事java开发一年多了,个人觉得对java只了解皮毛,很多东西都是用到再去慢慢学习,编程真的是一项艺术,要完成一段好的代码,需要懂得很多。
最近项目经理让我负责一个组件开发,框架都由自己搭建,最让我头疼的是异常处理,我看了一些网上的源码,发现他们对异常的处理不是很重视,研究了很久都没有找到很好的解决方案。后来有幸看到一个200W美元的项目部分源码,通过他们对异常处理的解决方案,我终
- 记录整理-工作问题
braveCS
工作
1)那位同学还是CSV文件默认Excel打开看不到全部结果。以为是没写进去。同学甲说文件应该不分大小。后来log一下原来是有写进去。只是Excel有行数限制。那位同学进步好快啊。
2)今天同学说写文件的时候提示jvm的内存溢出。我马上反应说那就改一下jvm的内存大小。同学说改用分批处理了。果然想问题还是有局限性。改jvm内存大小只能暂时地解决问题,以后要是写更大的文件还是得改内存。想问题要长远啊
- org.apache.tools.zip实现文件的压缩和解压,支持中文
bylijinnan
apache
刚开始用java.util.Zip,发现不支持中文(网上有修改的方法,但比较麻烦)
后改用org.apache.tools.zip
org.apache.tools.zip的使用网上有更简单的例子
下面的程序根据实际需求,实现了压缩指定目录下指定文件的方法
import java.io.BufferedReader;
import java.io.BufferedWrit
- 读书笔记-4
chengxuyuancsdn
读书笔记
1、JSTL 核心标签库标签
2、避免SQL注入
3、字符串逆转方法
4、字符串比较compareTo
5、字符串替换replace
6、分拆字符串
1、JSTL 核心标签库标签共有13个,
学习资料:http://www.cnblogs.com/lihuiyy/archive/2012/02/24/2366806.html
功能上分为4类:
(1)表达式控制标签:out
- [物理与电子]半导体教材的一个小问题
comsci
问题
各种模拟电子和数字电子教材中都有这个词汇-空穴
书中对这个词汇的解释是; 当电子脱离共价键的束缚成为自由电子之后,共价键中就留下一个空位,这个空位叫做空穴
我现在回过头翻大学时候的教材,觉得这个
- Flashback Database --闪回数据库
daizj
oracle闪回数据库
Flashback 技术是以Undo segment中的内容为基础的, 因此受限于UNDO_RETENTON参数。要使用flashback 的特性,必须启用自动撤销管理表空间。
在Oracle 10g中, Flash back家族分为以下成员: Flashback Database, Flashback Drop,Flashback Query(分Flashback Query,Flashbac
- 简单排序:插入排序
dieslrae
插入排序
public void insertSort(int[] array){
int temp;
for(int i=1;i<array.length;i++){
temp = array[i];
for(int k=i-1;k>=0;k--)
- C语言学习六指针小示例、一维数组名含义,定义一个函数输出数组的内容
dcj3sjt126com
c
# include <stdio.h>
int main(void)
{
int * p; //等价于 int *p 也等价于 int* p;
int i = 5;
char ch = 'A';
//p = 5; //error
//p = &ch; //error
//p = ch; //error
p = &i; //
- centos下php redis扩展的安装配置3种方法
dcj3sjt126com
redis
方法一
1.下载php redis扩展包 代码如下 复制代码
#wget http://redis.googlecode.com/files/redis-2.4.4.tar.gz
2 tar -zxvf 解压压缩包,cd /扩展包 (进入扩展包然后 运行phpize 一下是我环境中phpize的目录,/usr/local/php/bin/phpize (一定要
- 线程池(Executors)
shuizhaosi888
线程池
在java类库中,任务执行的主要抽象不是Thread,而是Executor,将任务的提交过程和执行过程解耦
public interface Executor {
void execute(Runnable command);
}
public class RunMain implements Executor{
@Override
pub
- openstack 快速安装笔记
haoningabc
openstack
前提是要配置好yum源
版本icehouse,操作系统redhat6.5
最简化安装,不要cinder和swift
三个节点
172 control节点keystone glance horizon
173 compute节点nova
173 network节点neutron
control
/etc/sysctl.conf
net.ipv4.ip_forward =
- 从c面向对象的实现理解c++的对象(二)
jimmee
C++面向对象虚函数
1. 类就可以看作一个struct,类的方法,可以理解为通过函数指针的方式实现的,类对象分配内存时,只分配成员变量的,函数指针并不需要分配额外的内存保存地址。
2. c++中类的构造函数,就是进行内存分配(malloc),调用构造函数
3. c++中类的析构函数,就时回收内存(free)
4. c++是基于栈和全局数据分配内存的,如果是一个方法内创建的对象,就直接在栈上分配内存了。
专门在
- 如何让那个一个div可以拖动
lingfeng520240
html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml
- 第10章 高级事件(中)
onestopweb
事件
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- 计算两个经纬度之间的距离
roadrunners
计算纬度LBS经度距离
要解决这个问题的时候,到网上查了很多方案,最后计算出来的都与百度计算出来的有出入。下面这个公式计算出来的距离和百度计算出来的距离是一致的。
/**
*
* @param longitudeA
* 经度A点
* @param latitudeA
* 纬度A点
* @param longitudeB
*
- 最具争议的10个Java话题
tomcat_oracle
java
1、Java8已经到来。什么!? Java8 支持lambda。哇哦,RIP Scala! 随着Java8 的发布,出现很多关于新发布的Java8是否有潜力干掉Scala的争论,最终的结论是远远没有那么简单。Java8可能已经在Scala的lambda的包围中突围,但Java并非是函数式编程王位的真正觊觎者。
2、Java 9 即将到来
Oracle早在8月份就发布
- zoj 3826 Hierarchical Notation(模拟)
阿尔萨斯
rar
题目链接:zoj 3826 Hierarchical Notation
题目大意:给定一些结构体,结构体有value值和key值,Q次询问,输出每个key值对应的value值。
解题思路:思路很简单,写个类词法的递归函数,每次将key值映射成一个hash值,用map映射每个key的value起始终止位置,预处理完了查询就很简单了。 这题是最后10分钟出的,因为没有考虑value为{}的情