Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.util.Collections;
- import java.util.LinkedList;
- import java.util.Scanner;
- public class Lab {
- String file1;
- String file2;
- LinkedList<Integer> myList;
- public Lab(String file1,String file2) {
- this.file1 = file1;
- this.file2 = file2;
- myList = scanFile(file1);
- }
- private LinkedList<Integer> scanFile(String file) {
- Scanner s = new Scanner(file);
- LinkedList<Integer> list = new LinkedList<Integer>();
- while (s.hasNext()) {
- list.add(Integer.parseInt(s.next()));
- }
- s.close();
- return list;
- }
- private File storeResult(String name,String result) {
- File log = new File(name);
- FileWriter fw;
- try {
- if (!log.exists()) {
- System.out.println("making a new file");
- log.createNewFile();
- fw = new FileWriter(log);
- fw.write("Mäter excekveringstid av en sorteringsalgoritm");
- fw.write(result);
- }
- else {
- fw = new FileWriter(log);
- fw.write(result);
- }
- }catch(IOException e){
- e.printStackTrace();
- }
- return log;
- }
- private String measureSortTime(LinkedList<Integer> list, int i) {
- long t1 = System.nanoTime();
- @SuppressWarnings("unchecked")
- LinkedList<Integer> copy = (LinkedList<Integer>) list.clone();
- Collections.sort(copy);
- long elapsedTime = System.nanoTime() - t1;
- String result = Long.toString(i + elapsedTime);
- return result;
- }
- private void doTheSorting(int n) {
- for(int i = 0; i < n; i++) {
- String result = measureSortTime(myList,i);
- storeResult(file2,result);
- }
- }
- public static void main(String[] args) {
- Lab mySort = new Lab(args[0],args[1]);
- int numberOfTimes = Integer.parseInt(args[2]);
- mySort.doTheSorting(numberOfTimes);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement