/* * Intro to Programming CSE 1310 * University of Texas at Arlington */ package selectionsort; /** * * @author jcmtiernan */ public class SelectionSort { /** * @param args the command line arguments */ public static void main(String[] args) { int[] array = {12, 5, 76, 99, 23, 18, 4, 92, 1, 55}; System.out.println(""); for (int i = 0; i < array.length; i++) System.out.println("array["+i+"] = "+array[i]); System.out.println(""); selectionSort(array); System.out.println(""); for (int i = 0; i < array.length; i++) System.out.println("array["+i+"] = "+array[i]); System.out.println(""); int[] array2 = {44, 87, 9, 23, 45, 11, 8, 52}; System.out.println(""); for (int i = 0; i < array2.length; i++) System.out.println("array2["+i+"] = "+array2[i]); System.out.println(""); selectionSortRecur(array2, 0, array2.length); System.out.println(""); for (int i = 0; i < array2.length; i++) System.out.println("array2["+i+"] = "+array2[i]); System.out.println(""); } public static void selectionSort(int[] arr) { int i = 0; int lrgst; // largest element int lgtIndex = -1; // index of largest element int temp; for(int outer = 0; outer 1) { lrgst = -100000; for (i = outer; i < (arr.length); i++) { //System.out.println("i = "+i+" arr[i] = "+arr[i]); if (arr[i] > lrgst) { lrgst = arr[i]; lgtIndex = i; } } System.out.println("In sS, outer is "+outer+", lrgst = "+lrgst+" at index "+lgtIndex); // swap lgtIndex with first index temp = arr[outer]; arr[outer] = arr[lgtIndex]; arr[lgtIndex] = temp; return selectionSortRecur(arr, outer+1, sz-1); } else { return arr; } } }