zoukankan      html  css  js  c++  java
  • bmhs算法

    #include<string.h>
    main()
    {
            char *text="substering searching algorithm search";
            char *patt="search",* match_text;
            int shift[256];
            int patt_size=strlen(patt);
            int i;
            int text_size,limit,match_size;
            for(i=0;i<256;i++)
                    shift[i]=patt_size+1;
            for(i=0;i<patt_size;i++)
                    *(shift+(*(patt+i)))=patt_size-i;
            text_size=strlen(text);
            limit=text_size-i+1;
            for(i=0;i<limit;i+=shift[text[i+patt_size] ] )
            {
                    if(text[i]==*patt)
                    {
                            match_text=text+i+1;
                            match_size=1;
                            do{
                                    if(match_size==patt_size)
                                    printf("i = %d\n", i);
                            }while( (*match_text++)==patt[match_size++] );
                    }
            }
    }

  • 相关阅读:
    html页面怎样能够自适应电脑屏幕宽度
    js语法大全
    DevExtreme- jQuery 表格组件-DataGrid
    DevExtreme 图表组件
    C# 中的委托和事件
    SQL Server游标的使用
    Oracle11g使用exp导出空表
    PowerDesigner设计Name和Comment 替换
    Toad for Oracle 快捷键
    Windows 命令大全
  • 原文地址:https://www.cnblogs.com/maifengqiang/p/3108221.html
Copyright © 2011-2022 走看看