import java.io.*; import java.util.*; public class Buckets { ArrayList[] buckets = new ArrayList[10]; int[] nums = new int[10]; public Buckets(){ Random r = new Random(); for (int i=0; i<10; i++) { nums[i] = 1000 + r.nextInt(9000); } System.out.println(Arrays.toString(nums)); } ////////////////////// public int[] radixSort(){ for(int i = 0; i<10; i++) { buckets[i] = new ArrayList(); } for(int n=0; n<4; n++){ for (int i=0; i<nums.length; i++){ int digit = (nums[i]/(int)Math.pow(10,n)%10); buckets[digit].add(nums[i]); } //puts nums in buckets int z=0; while (z<nums.length) { for (int i=0; i<buckets.length; i++) { for(int j=0; j<buckets[i].size(); j++){ nums[z] = (Integer)(buckets[i].get(j)); z = z+1; } } } //places bucket in order inside nums for(int i = 0; i<10; i++) { buckets[i] = new ArrayList(); } //resets bucket } //////////////////// System.out.println(Arrays.toString(nums)); return nums; } public int[] bubbleSort(){ int comparisons = 0; int swaps = 0; int temp; for (int i=0; i<nums.length-1; i++){ for (int j=0; j<nums.length-1; j++){ comparisons = comparisons + 1; if (nums[j] > nums[j+1]){ swaps = swaps + 1; temp = nums[j]; nums[j] = nums[j+1]; nums[j+1] = temp; } } } System.out.println(Arrays.toString(nums)); System.out.println("Comparisons: " + comparisons); System.out.println("Swaps: " + swaps); return nums; } }