@@ -0,0 +1,2105 @@
+public static void RadixSort(ArrayList%3CInteger%3E list) %7B%0A        %0A        final int NUM_BASE = 10;%0A        %0A        int maximum = 0;%0A        %0A        ArrayList%3CArrayList%3CInteger%3E%3E buckets;%0A        buckets = new ArrayList%3CArrayList%3CInteger%3E%3E(NUM_BASE);%0A        %0A        // New buckets are added to the bucket list; one for each digit%0A        // in the numeral system of the data being sorted.%0A        %0A        for (int ii = 0; ii %3C NUM_BASE; ii++) %7B%0A%0A            buckets.add(new ArrayList%3CInteger%3E());%0A        %7D%0A%0A        // Identifying the list item with the most place values.%0A        %0A        for (int ii = 0; ii %3C list.size(); ii++) %7B%0A%0A            if (list.get(ii) %3E maximum) %7B%0A%0A                maximum = list.get(ii);%0A            %7D%0A        %7D%0A        %0A        // List items are sorted by place value. The place value is%0A        // multiplied by the numeric base with each pass of the loop.%0A%0A        for (int power = 1; maximum / power != 0; power *= NUM_BASE) %7B%0A%0A            for (int ii = 0; ii %3C list.size(); ii++) %7B%0A%0A                // List items are added to the bucket which corresponds%0A                // to the place value which they are being sorted by.%0A                %0A                buckets.get(list.get(ii) / power %25 NUM_BASE)%0A                        .add(list.get(ii));%0A            %7D%0A%0A            int index = 0;%0A%0A            for (int ii = 0; ii %3C buckets.size(); ii++) %7B%0A%0A                for (int jj = 0; jj %3C buckets.get(ii).size(); jj++) %7B%0A%0A                    // The buckets, sorted by the current place value%0A                    // under consideration, have their values written%0A                    // back to original list, overwriting its previous%0A                    // contents.%0A                    %0A                    list.set(index, buckets.get(ii).get(jj));%0A                    index++;%0A                %7D%0A            %7D%0A            %0A            // At the end of each pass of the loop, the contents of the%0A            // buckets are dumped out.%0A%0A            for (int ii = 0; ii %3C buckets.size(); ii++) %7B%0A%0A                buckets.get(ii).clear();%0A            %7D%0A        %7D%0A    %7D%0A    %0A

Add A Readable Radix Sort