Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- **********Median********************************************
- public static int median(Vector a, int lo, int hi) {
- // TODO
- int median=(lo+hi)/2;
- System.out.println("la mediane est :"+a.get(median));
- return a.get(median);
- }
- private static boolean less(int v, int w)
- {
- return v<w;
- }
- public static void sort(Vector a)
- {
- // Sort a[] into increasing order.
- int N = a.size(); // array length
- for (int i = 0; i < N; i++)
- {
- // Exchange a[i] with smallest entry in a[i+1...N).
- int min = i;
- for (int j = i+1; j < N; j++)
- if (less(a.get(j), a.get(min))) min = j;
- a.swap(i, min);
- }
- for (int i = 0; i < N; i++)
- {
- //a.set(i, i*5);
- System.out.println(a.get(i));
- }
- }
- public static void initializ(Vector a)
- {
- int N = a.size();
- int j=50;
- for (int i = 0; i < N; i++)
- {
- a.set(i, j);
- j=j-5;
- }
- }
- **********************************************************************************************
- ********** merge sort ********************************************************************
- public class MergeSort {
- /**
- * Pre-conditions: a[lo..mid] and a[mid+1..hi] are sorted
- * Post-conditions: a[lo..hi] is sorted
- */
- private static void merge(Comparable[] a, Comparable[] aux, int lo, int mid, int hi) {
- for (int k = lo; k <= hi; k++) {
- aux[k] = a[k];
- }
- int i = lo;
- int j = mid + 1;
- for (int k = lo; k <= hi; k++) {
- if (i > mid) {
- a[k] = aux[j++];
- } else if (j > hi) {
- a[k] = aux[i++];
- } else if (aux[j].compareTo(aux[i]) < 0) {
- a[k] = aux[j++];
- } else {
- a[k] = aux[i++];
- }
- }
- }
- // Mergesort a[lo..hi] using auxiliary array aux[lo..hi]
- private static void sort(Comparable[] a, Comparable[] aux, int lo, int hi) {
- // TODO
- }
- /**
- * Rearranges the array in ascending order, using the natural order
- */
- public static void sort(Comparable[] a) {
- // TODO
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement