Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Arrays;
- public class MyClass {
- public static ArrayList<String> removeAll_My(ArrayList<String> z, int[] ii) {
- if(ii.length==0) return z;
- ArrayList<String> nz = new ArrayList<String>();
- Arrays.sort(ii);
- int prev=0;
- for (int x = 0; x < ii.length; x++ ) {
- if(ii[x]-prev>0)
- nz.addAll(z.subList(prev,ii[x]));
- prev=ii[x]+1;
- }
- if(prev<z.size()){
- nz.addAll(z.subList(prev,z.size()));
- }
- return nz;
- }
- public static void removeAll_Ki(ArrayList<String> z, int[] ii) {
- if(ii.length==0) return;
- Arrays.sort(ii);
- for (int x = ii.length-1; x >= 0; x--) {
- z.remove(ii[x]);
- }
- }
- public static void main(String[] args) {
- ArrayList<String> x = new ArrayList<String>();
- ArrayList<String> r = new ArrayList<String>();
- for(int i=0; i<100000; i++)
- x.add(String.format ("%05d", i));
- int[] myArray;
- myArray = new int[30000];
- for(int i=0; i<30000; i++)
- myArray[i]=i*3;
- long startTime = System.nanoTime ();
- for(int i=0; i<1; i++)
- removeAll_Ki(x,myArray);
- long stopTime = System.nanoTime ();
- System.out.println("Kir:" + (stopTime - startTime ));
- x = new ArrayList<String>();
- for(int i=0; i<100000; i++)
- x.add(String.format ("%05d", i));
- startTime = System.nanoTime ();
- for(int i=0; i<1; i++)
- r = removeAll_My(x,myArray);
- stopTime = System.nanoTime ();
- System.out.println("My:" + (stopTime - startTime ));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement