<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    E81086713E446D36F62B2AA2A3502B5EB155

    Java雜家

    雜七雜八。。。一家之言

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      40 Posts :: 1 Stories :: 174 Comments :: 0 Trackbacks
    **
     
    * Demonstrate KMP algorithm in Java
     
    *
     
    *
     
    */
    public class KMP {
        
        
        
    public static int indexOf(String target,String pattern)
        {
            
    int pLen=pattern.length();
            
    int tLen=target.length();
            
            
    //the fail function
            int failFunc[]=new int[pLen];
            
            failFunc[
    0]=-1;
            
            
    //build fail function
            for(int i=1;i<pLen;i++)
            {
                
    int j=failFunc[i-1];
                
    while(pattern.charAt(i)!=pattern.charAt(j+1)&&j>=0)
                {
                    
    //recursion 
                    j=failFunc[j];
                }
                
    if(pattern.charAt(i)==pattern.charAt(j+1))
                {
                    failFunc[i]
    =j+1;
                }
                
    else 
                {
                    failFunc[i]
    =-1;
                }
            }

            
    int pPos=0,tPos=0;
            
            
    while(tPos<tLen&&pPos<pLen)
            {
                
    if(target.charAt(tPos)==pattern.charAt(pPos))
                {
                    
    //match ,then do forward
                    tPos++;
                    pPos
    ++;
                }
                
    else if(pPos==0)
                {
                    
    //target go forward
                    tPos++;
                }
                
    else
                {
                    
    //target postion don't change,pattern go back  
                    pPos=failFunc[pPos-1]+1;
                }
            }
            
            
    if(pPos<pLen)return -1;
            
    else return tPos-pLen;
            
            
            
        }

    }

    posted on 2007-07-10 18:19 DoubleH 閱讀(536) 評論(0)  編輯  收藏 所屬分類: Memorandum
    主站蜘蛛池模板: 亚洲日韩乱码中文字幕| 亚洲在成人网在线看| 噜噜噜亚洲色成人网站| 成年女人18级毛片毛片免费观看| 亚洲精品亚洲人成在线麻豆| 99久热只有精品视频免费看| 国产成人精品日本亚洲| 日韩电影免费在线观看网站| 亚洲色成人WWW永久网站| 97在线免费视频| 亚洲Av永久无码精品三区在线| 免费视频精品一区二区三区| 亚洲国产成人私人影院| 永久黄色免费网站| 亚洲国产成人va在线观看网址| 色se01短视频永久免费| 亚洲熟妇AV一区二区三区宅男| 日韩在线视频免费看| 日本亚洲中午字幕乱码| 亚洲人成色7777在线观看不卡 | 嫩草影院免费观看| 丰满亚洲大尺度无码无码专线| 一本色道久久88亚洲综合 | 免费在线观看亚洲| 亚洲综合区小说区激情区| 国产精品网站在线观看免费传媒| 亚洲日本香蕉视频观看视频| 毛片a级毛片免费播放下载| 黄色一级视频免费观看| 亚洲AV无码专区国产乱码4SE| 国产精品成人观看视频免费 | 亚洲人成国产精品无码| 日本一区二区免费看| 亚洲伊人久久大香线蕉影院| 国产男女猛烈无遮挡免费视频| 好吊色永久免费视频大全| 日韩精品亚洲人成在线观看| 特级淫片国产免费高清视频| 中文毛片无遮挡高清免费| 亚洲午夜久久久精品电影院| 亚洲国产中文v高清在线观看|