Posterior a de esta prolongada búsqueda de datos dimos con la solución este asunto que suelen tener ciertos de nuestros usuarios. Te brindamos la solución y nuestro objetivo es que resulte de mucha apoyo.
Ejemplo 1: Quicksort java
import java.util.Arrays;publicclassQuickSortInJavaintpartition(int[] arrNumbers,int low,int high)int pivot = arrNumbers[high];// smaller element indexint a =(low -1);for(int b = low; b < high; b++)// if current element is smaller than the pivotif(arrNumbers[b]< pivot)
a++;// swap arrNumbers[a] and arrNumbers[b]int temp = arrNumbers[a];
arrNumbers[a]= arrNumbers[b];
arrNumbers[b]= temp;// swap arrNumbers[a + 1] and arrNumbers[high] or pivotint temp = arrNumbers[a +1];
arrNumbers[a +1]= arrNumbers[high];
arrNumbers[high]= temp;return a +1;voidsort(int[] arrNumbers,int low,int high)if(low < high)int p =partition(arrNumbers, low, high);/* recursive sort elements before
partition and after partition */sort(arrNumbers, low, p -1);sort(arrNumbers, p +1, high);staticvoiddisplayArray(int[] arrNumbers)int s = arrNumbers.length;for(int a =0; a < s;++a)
System.out.print(arrNumbers[a]+" ");
System.out.println();publicstaticvoidmain(String[] args)int[] arrNumbers =59,74,85,67,56,29,68,34;int s = arrNumbers.length;
QuickSortInJava obj =newQuickSortInJava();
obj.sort(arrNumbers,0, s -1);
System.out.println("After sorting array: ");displayArray(arrNumbers);
Ejemplo 2: código de clasificación rápido en java
import java.util.*;classQuickSort//selects last element as pivot, pi using which array is partitioned.intpartition(int intArray[],int low,int high)int pi = intArray[high];int i =(low-1);// smaller element indexfor(int j=low; j<high; j++)// check if current element is less than or equal to piif(intArray[j]<= pi)
i++;// swap intArray[i] and intArray[j]int temp = intArray[i];
intArray[i]= intArray[j];
intArray[j]= temp;// swap intArray[i+1] and intArray[high] (or pi)int temp = intArray[i+1];
intArray[i+1]= intArray[high];
intArray[high]= temp;return i+1;//routine to sort the array partitions recursivelyvoidquick_sort(int intArray[],int low,int high)if(low < high)//partition the array around pi=>partitioning index and return piint pi =partition(intArray, low, high);// sort each partition recursivelyquick_sort(intArray, low, pi-1);quick_sort(intArray, pi+1, high);classQUICK_SORTpublicstaticvoidmain(String args[])//initialize a numeric array, intArrayint intArray[]=3,2,1,6,5,4;int n = intArray.length;//print the original array
System.out.println("Original Array: "+ Arrays.toString(intArray));//call quick_sort routine using QuickSort object
QuickSort obj =newQuickSort();
obj.quick_sort(intArray,0, n-1);//print the sorted array
System.out.println("nSorted Array: "+ Arrays.toString(intArray));
Ejemplo 3: programa de clasificación rápida en c
#include voidquicksort(int number[25],int first,int last)int i, j, pivot, temp;if(first<last)
pivot=first;
i=first;
j=last;while(i<j)while(number[i]<=number[pivot]&&i<last)
i++;while(number[j]>number[pivot])
j--;if(i<j)
temp=number[i];
number[i]=number[j];
number[j]=temp;
temp=number[pivot];
number[pivot]=number[j];
number[j]=temp;quicksort(number,first,j-1);quicksort(number,j+1,last);intmain()int i, count, number[25];printf("How many elements are u going to enter?: ");scanf("%d",&count);printf("Enter %d elements: ", count);for(i=0;i<count;i++)scanf("%d",&number[i]);quicksort(number,0,count-1);printf("Order of Sorted elements: ");for(i=0;i<count;i++)printf(" %d",number[i]);return0;
Recuerda difundir este post si si solucionó tu problema.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)