class Solution {
public int strStr(String haystack, String needle) {
if(needle.length()<1){
return 0;
}
char[] ha = haystack.toCharArray();
char[] ne = needle.toCharArray();
int hi=0;
int ni = 0;
int [] next = getNextArray(ne);
while(hi<ha.length&&ni<ne.length){
if(ha[hi]==ne[ni]){
hi++;
ni++;
}else{ if(next[ni]==-1){
hi++;
}else{
ni=next[ni];
}
}
}
return ni==ne.length? hi-ni:-1;
}
public static int [] getNextArray(char[] a){
if(a.length==1){
return new int[] {-1};
}
int []next = new int[a.length];
next[0] = -1;
next[1] = 0;
int i = 2;
int j = 0;
while(i<next.length){
if(a[i-1]==a[j]){
next[i++]=++j;
}else if(j>0){
j=next[j];
}else{
next[i++]=0;
}
}
return next;
}
}
这是本人装完MySQL 8.X的数据库之后遇到的坑:报错如下:后来经查资料,是因为8.0版本之后的时区相差8个小时处理办法就是:在连接后面加上&serverTimezone=GMT%2B8如下:..._mysql的坑
环境Ubuntu 18.04 bionicKDE 5.47.0 / Plasma 5.12.7描述在非gnome桌面环境下,Deepin-Wine软件大部分不能启动,例如deepin-Tim,deepin-QQ以及微信等。按照DLM的说法,深度在打包Deepin-Wine软件时加入了对Gnome的依赖。通过安装gnome-settings-daemon即可解决。安装gnome-se..._arch kde 换成 deppin桌面
博主今天总结这段时间抽空写的一个GUI编程项目功能是查看本地打印机队列,可选择指定队列重新打印直接上图UI设计包括3个区域左上方,右上方和下方列表区域使用网格grid方法来分配位置下面是界面设计的代码 1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 4 from Tkinter impor...
占小狼 转载请注明原创出处,谢谢!问题最近的几次面试中,我都问了是否了解HashMap在并发使用时可能发生死循环,导致cpu100%,结果让我很意外,都表示不知道有这样的问题,让我意外的是面试者的工作年限都不短。由于HashMap并非是线程安全的,所以在高并发的情况下必然会出现问题,这是一个普遍的问题,虽然网上分析的文章很多,还是觉得有必须写一篇文章,让关注我公众号的同学能够意识到这个...
Amazon Kinesis:大规模数据流的实时处理; Apache Chukwa:数据采集系统; Apache Flume:管理大量日志数据的服务; Apache Kafka:分布式发布-订阅消息系统; Apache Sqoop:在Hadoop和结构化的数据存储区...
java中的ArrayList内部是由数组实现的,但是正因为这一点,ArrayList与数组打交道的时候应该要注意一些问题。测试代码1public static void main(String[] args) { //创建一个字符串数组 String[] words = "And that is how we know the Earth to be bana..._arrays.arraylis
PS:本人遇到这个问题是用文中最后一句话解决:" 在组件的样式中记得添加 'scoped' "。服务器在Vue项目开发过程当中遇到两次,本地运行正常,build后在服务器上样式没有生效,或者在本地的效果没有正常显示,下面一一说明:测试1、多个相一样式文件同时存在项目中现象:修改组件时,在项目中复制了一个组件重命名后进行修改,在本地执行正常,后打包上传,没法展现正常效果。解决过程:在本地试图修改老是...
前言众所周知,对于一个一维的数组,或是一个字符串,我们可以使用两种办法:数组或链表两种方法来储存。但是,看了国家集训队2008年苏煜的论文之后,就知道了一种神奇的骗分方式:数组+链表形成的块状链表。 先来看看块状链表和两种方式的对比 方式 修改 查询 链表 O(N)O(N) O(1)O(1) 数组 O(1)O(1) O(N)O(N) 块状链表 O(N−−√
使用apipost的时候遇到了error:invalid protocol的问题查找了一下原因,是因为使用了代理的问题,关闭代理之后还是出现error:invalid protocol的问题。看了一下环境变量发现使用代理服务器会在环境变量中设置一个http_proxy,我们只要删除改环境变量就可以正常使用apipost了...
You are given three n × n matrices A, B and C. Does the equation A × B = C hold true?InputThe first line of input contains a positive integer n (n ≤ 500) followed by the the three matrices A, B and C ...
最近特别喜欢用Pig,拥有能满足大部分需求的内置函数(built-in functions),支持自定义函数(user defined functions, UDF),能load 纯文本、avro等格式数据;illustrate看pig执行步骤的结果,describe看alias的schema;以轻量级脚本形式跑MapReduce任务,各种爽爆。1. Word Count较于中文,英文比较工...
函数def'''python 函数def 函数名(参数列表): 函数体如果参数要指定数据类型,参数名:数据类型num : intstr1 : strlist1 : listdict1 : dictset1 : set'''def addNum(a: int, b: int, c: int): return a + b + cdef addNum2(a:..._python中class和def