bruteforcestringsearcher.java
来自「BOOK:Beginning Algorithms Code Example」· Java 代码 · 共 46 行
JAVA
46 行
package com.wrox.algorithms.ssearch;/** * A {@link StringSearcher} that uses a brute-force algorithm. * */public class BruteForceStringSearcher implements StringSearcher { /** The pattern for which to search. */ private final CharSequence _pattern; /** * Constructor. * * @param pattern The pattern for which to search. */ public BruteForceStringSearcher(CharSequence pattern) { assert pattern != null : "pattern can't be null"; assert pattern.length() > 0 : "pattern can't be empty"; _pattern = pattern; } public StringMatch search(CharSequence text, int from) { assert text != null : "text can't be null"; assert from >= 0 : "from can't be < 0"; int s = from; while (s <= text.length() - _pattern.length()) { int i = 0; while (i < _pattern.length() && _pattern.charAt(i) == text.charAt(s + i)) { ++i; } if (i == _pattern.length()) { return new StringMatch(_pattern, text, s); } ++s; } return null; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?