Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Random;
- public class benchmark{
- public static void main(String[] args) {
- Random r = new Random();
- int fileSize = 200*1024*1024;
- fileSize += 11;
- String stringToFind = "hello world";
- char[] strArr = stringToFind.toCharArray();
- char[] data = new char[fileSize];
- for(int i = 0; i < fileSize; i++) {
- data[i] = (char) r.nextInt();
- }
- for(int i = fileSize - strArr.length; i < fileSize; i++) {
- data[i] = strArr[strArr.length - (fileSize - i)];
- }
- System.out.println(data[fileSize - 1]);
- long start = System.currentTimeMillis();
- int found = 0;
- for(int i = 0; i < fileSize; i++) {
- if (data[i] == strArr[found]) {
- found += 1;
- } else {
- found = 0;
- }
- if (found == strArr.length - 1) {
- System.out.println("Found at idx " + (i - strArr.length));
- found = 0;
- }
- }
- long end = System.currentTimeMillis();
- System.out.println("time was " + (end - start) / 1000.0 + " seconds.");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment