Guest User

Untitled

a guest
Apr 27th, 2018
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.19 KB | None | 0 0
  1. import java.util.Random;
  2.  
  3. public class benchmark{
  4.     public static void main(String[] args) {
  5.         Random r = new Random();
  6.         int fileSize = 200*1024*1024;
  7.         fileSize += 11;
  8.         String stringToFind = "hello world";
  9.         char[] strArr = stringToFind.toCharArray();
  10.         char[] data = new char[fileSize];
  11.         for(int i = 0; i < fileSize; i++) {
  12.             data[i] = (char) r.nextInt();
  13.         }
  14.  
  15.         for(int i = fileSize - strArr.length; i < fileSize; i++) {
  16.             data[i] = strArr[strArr.length - (fileSize - i)];
  17.         }
  18.  
  19.         System.out.println(data[fileSize - 1]);
  20.         long start = System.currentTimeMillis();
  21.  
  22.         int found = 0;
  23.         for(int i = 0; i < fileSize; i++) {
  24.             if (data[i] == strArr[found]) {
  25.                 found += 1;
  26.             } else {
  27.                 found = 0;
  28.             }
  29.  
  30.             if (found == strArr.length - 1) {
  31.                 System.out.println("Found at idx " + (i - strArr.length));
  32.                 found = 0;
  33.             }
  34.  
  35.         }
  36.         long end = System.currentTimeMillis();
  37.         System.out.println("time was " + (end - start) / 1000.0 + " seconds.");
  38.  
  39.  
  40.     }
  41. }
Advertisement
Add Comment
Please, Sign In to add comment