91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

編程實現如下功能: 1、在實驗六的基礎上,實現串的Brute-Force模式匹配算法。 2、嘗試實現串的KMP模式匹配算法。

資源截圖

代碼片段和文件信息

/**
?*?串的操作實驗二:BF算法、KMP算法
?*/
package?string;
import?java.util.Scanner;
/**
?*?@author?朱宇婧2017302330020
?*?2018年11月1日?上午9:40:08
?*/
public?class?SeqString{
private?char[]?strvalue;//字符數組,存放串值
????private?int?curlen;//當前串的長度

/**
?*?構造方法,以字符串常量構造串對象
?*/
????public?SeqString(String?str)?{
????????if?(str?!=?null)?{
????????????char[]?tempchararray?=?str.toCharArray();
????????????strvalue?=?tempchararray;
????????????curlen?=?tempchararray.length;
????????}
????}
????
????/**
?????*?返回字符串長度
?????*?@return
?????*/
????public?int?length()?{
????????return?curlen;????//區別:?strvalue.length是數組容量
????}
????
/**
?*?返回字符串中序號為index的字符
?*?@param?index
?*?@return
?*/
????public?char?charAt(int?index)?{
????????if?((index?=?curlen))?{
????????????throw?new?StringIndexOutOfBoundsException(index);
????????}
????????return?strvalue[index];
????}
????
????/**
?????*?實現BF算法
?????*?@param?target
?????*?@param?pattern
?????*?@return
?????*/
public?static?int?BF(SeqString?target?SeqString?pattern)?{
int?index?=?0;
int?i?=?0?j?=?0;
char[]?array1?=?target.strvalue;
char[]?array2?=?pattern.strvalue;

while(i? if(array1[i]?==?array2[j])?{
i++;
j++;
}?else?{
index++;
i?=?index;
j?=?0;
}
}

if(j?==?array2.length)?{
return?(index+1);//位置要+1
}
return?-1;
}

/**
?*?KMP算法
?*?@param?target
?*?@param?pattren
?*?@param?next
?*?@return
?*/
public?static?int?KMP(SeqString?target?SeqString?pattern?int[]?next){
????????for(int?i?=?0?j?=?0;?i?????????????while(j?>?0?&&?target.charAt(i)?!=?pattern.charAt(j)){
????????????????j?=?next[j

評論

共有 條評論