Основная концепция пузырьковой сортировки (BubbleSort) заключается в последовательном сравнении двух соседних чисел, помещая десятичную дробь спереди и большое число сзади. То есть при первом проходе: сначала сравниваем первое и второе числа, первым ставим десятичную дробь, а последним большое число. Затем сравните второе число и третье число, поставьте десятичную дробь впереди, а большое число сзади и продолжайте так до тех пор, пока не сравните два последних числа, поставьте десятичную дробь впереди, а большое число сзади. Это конец первой поездки, и в конце осталось наибольшее число. На втором проходе: все равно начните сравнение с первой пары чисел (потому что из-за замены второго числа и третьего числа может быть, что первое число уже не меньше второго числа), сначала поставьте десятичную дробь и большое число. После его размещения сравнение продолжается до предпоследнего числа (предпоследняя позиция уже является самой большой). В конце второго прохода получается новое максимальное число. предпоследняя позиция (фактически это предпоследнее число во всей последовательности). Второе по величине число). Продолжайте в том же духе и повторяйте описанный выше процесс, пока сортировка не будет окончательно завершена.
Скопируйте код кода следующим образом:
общественный класс Пайсю {
public static void main(String[] args) {
int [] а = {2,6,4,5,1,7,3};
интервал я = 0;
интервал j = 0;
интервал п = 0;
for(i= 0;i<a.length-1;i++){
for(j=0;j<a.length-i-1;j++){
если(а[j]>a[j+1]){
п = а[j];
а[j] = а[j+1];
а[j+1] = п;
}
}
}
for (я = 0; я <a.length; я++) {
System.out.println(a[i]);
}
}
}
Сортировка с прямым выбором также является простым методом сортировки. Его основная идея заключается в следующем: выберите минимальное значение из R[0]~R[n-1] в первый раз, замените его на R[0], а затем выберите минимальное значение. из R{1}~R[n-1] дважды и поменяйте его на R[1]...., i-й раз выбирает минимальное значение из R[i-1]~R[n-1] и заменяет его на R[i-1],..., n-1-й раз выбирает минимальное значение из R[ n-2]~ Выберите минимальное значение из R[n-1], замените его на R[n-2] и передайте его в общей сложности n-1 раз, чтобы получить упорядоченную последовательность, упорядоченную от меньшего к большему в соответствии с код сортировки.
Скопируйте код кода следующим образом:
общественный класс Пайсюй {
public static void main(String[] args) {
int [] а = {2,6,4,5,1,7,3};
интервал я = 0;
интервал j = 0;
интервал п = 0;
for(i= 0;i<a.length;i++){
for(j=i+1;j<a.length;j++){
если(а[i]>a[j]){
п = а[я];
а[j] = а[я];
а[я] = п;
}
}
}
for (я = 0; я <a.length; я++) {
System.out.println(a[i]);
}
}
}
Пример 2
Скопируйте код кода следующим образом:
пакет cn.cqu.coce.xutao;
общественный класс выбирает сортировку {
public static void main(String args[]){
int a[]={34,56,3,234,767,89,0,324,1,32,54,89,8};
int b[]=новый int[a.length];
System.arraycopy(a, 0, b, 0, a.length);
for(int i=0;i<a.length;i++){
System.out.print(a[i]+"/t");
}
Система.out.println();
//Выбираем сортировку
for(int i=0;i<a.length-1;i++){
интервал мин = я;
for(int j=i+1;j<a.length;j++){
если(а[мин]>а[j])
мин=j;
}
если(мин!=я){
int temp=a[мин];
а[мин]=а[я];
а[я]=температура;
}
}
for(int i=0;i<a.length;i++)
System.out.print(a[i]+"/t");
Система.out.println();
//пузырьковая сортировка
for(int i=0;i<b.length;i++){
for(int j=1;j<b.length-i;j++){
если(б[j-1]>b[j]){
int te=b[j];
б[j]=b[j-1];
б[j-1]=те;
}
}
}
for(int i=0;i<b.length;i++)
System.out.print(b[i]+"/t");
Система.out.println();
}
}