Posts Tagged: algorithm

Text

    public static void fibonacci() {
        int n = 0, temp1 = 0, temp2 = 1, result;
        char ans = ‘a’;
       
        do {
           
            if(n<=1)
                result = n;
            else {
                result = temp1 + temp2;
                temp1 = temp2;
                temp2 = result;
            }
           
            n++;
            System.out.print(result + “, “);
           
            if(n >= 9) {
                System.out.print(“Continue? (y/n) “);
                ans = getAns();
            }
           
        } while (ans == ‘y’ || n < 9);
       
    }
   
    public static char getAns()
    {
        InputStreamReader streamReader = new InputStreamReader(System.in);
        BufferedReader reader = new BufferedReader(streamReader);
        String answer = null;
       
        try {
            answer = reader.readLine();
        } catch (IOException e) {
            e.printStackTrace();
        }       
       
        return answer.toCharArray()[0];
    }

Output:

0, 1, 1, 2, 3, 5, 8, 13, 21, Continue? (y/n) y
34, Continue? (y/n) n

Text

int arr[ ] = {5, 2, 4, 6, 1, 3, 7, 15, 11, 9, 10, 8, 12, 13, 14};
       
        System.out.print(“Unsorted: “);
        for(int i =0; i<arr.length; i++)
            System.out.print(arr[i] + ” “);
       
        for(int j = 1; j<arr.length; j++) {
           
            int key = arr[j];
            int i = j - 1;
           
            while(i>=0 && arr[i] > key) {
                arr[i+1] = arr[i];
                i = i -1;
            }
           
            arr[i+1] = key;           
        }
       
        System.out.print(“\n  Sorted: “);
        for(int i =0; i<arr.length; i++)
            System.out.print(arr[i] + ” “);

Output:

Unsorted: 5 2 4 6 1 3 7 15 11 9 10 8 12 13 14 
  Sorted: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Worst Case Performance: О(n2)
Best Case Performance: О(n)
Average Case Performance: О(n2)