模糊搜索算法
发布时间: 2023-06-12 21:19:33
Ⅰ 通讯录拼音搜索模糊匹配的算法问题
我用java写了个简单的,你可以多测试下:
publicstaticvoidmain(String[]args){
String[]name={"wang","hai","bao"};
String[]tests={"whb","WaHB","wangHB","HB","wh","whbo","whba"};
for(Stringstring:tests){
System.out.println(string+":"+match(name,string));
}
}
publicstaticbooleanmatch(String[]source,Stringinput){
if(source==null||source.length==0||input==null||input.length()==0){
returnfalse;
}
Stringtemp;
//统一转小写
input=input.toLowerCase();
for(inti=0;i<source.length;i++){
temp=source[i].toLowerCase();
if(temp==null||temp.length()==0){
returnfalse;
}
//最后一步特殊处理
if(i==source.length-1){
if(temp.startsWith(input)){
returntrue;
}
}
//输入的字符完全匹配到
if(input.startsWith(temp)){
//匹配到后生成新的字符串
input=input.substring(0,input.indexOf(temp));
//System.out.println("temp:"+temp+" 匹配到后input:"+input);
}
//首字母匹配到
elseif(temp.startsWith(input.substring(0,1))){
input=input.substring(1);
//System.out.println("temp:"+temp+" 匹配到后input:"+input);
}else{
returnfalse;
}
//表示匹配结束
if(input.length()==0){
returntrue;
}
}
returnfalse;
}
Ⅱ 什么叫模糊控制算法
模糊控制技术是利用模糊控制算法控制变频器的电压和频率的一种技术,通过模糊控制技术可使被控电动机的升速时间得到控制,以避免升速过快对电动机使用寿命的影响以及升速过慢而影响工作效率。
热点内容