@@ -0,0 +1,1415 @@
+ /*%0A  ex: java Driver 50 invert%0A  %0A  calculates localSearch for 50 elements.%0A  %0A */%0Aimport java.util.*;%0Aimport function.FunctionUtility;%0Aimport function.ToDoubleFunction;%0Aimport util.SequenceUtility;%0Aclass Driver%7B%0A    public static void main(String%5B%5D args)%7B%0A        Search s = new Search();%0A        int d = Integer.parseInt(args%5B0%5D);%0A        String f = args%5B1%5D;%0A        ArrayList%3CSkip%3E a = new ArrayList%3C%3E();%0A        HashMap%3CInteger,Integer%3E sums = new HashMap%3C%3E();%0A        ArrayList%3CInteger%3E initial = new ArrayList%3C%3E();%0A        ToDoubleFunction func = FunctionUtility.getDefaultFunctionMap().get(f);%0A        s.setGlobalMax(Double.NEGATIVE_INFINITY);%0A        initial = s.depthElements(d,-1,a,initial,sums);%0A        s.localSearch(a,initial,func);%0A        ArrayList%3CSkip%3E o = s.getMaxSkip();%0A        for(Skip sk: o)%7B%0A            System.out.println(sk.toString());%0A        %7D%0A        ArrayList%3CInteger%3E out = s.getMaxSequenceFound();%0A        System.out.println(%22Maximum found at depth: %22 + d);%0A        SequenceUtility.print(System.out,out);%0A        System.out.println();%0A        System.out.println(%22---------%22);%0A        System.out.println(%22With weight: %22 + (SequenceUtility.reverseSum(out,func)));%0A        System.out.println();%0A        System.out.println(%22---------%22);%0A        System.out.println(%22Max skip array: %22);%0A%0A%0A        System.out.println(%22Weight calculated: %22 + SequenceUtility.reverseSum(out,func));%0A%0A    %7D%0A%7D%0A

Create Driver.java