Вот на паскале, например:
var
a:array[1..100] of integer;
i,j,n,buf:integer;
begin
read(n);
for i:=1 to n do
begin
read(a[ i ]);
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if a[ i ]>a[j] then
begin
buf:=a [ i ];
a [ i ]:=a[j];
a[j]:=buf;
end;
writeln;
writeln('Массив после сортировки пузырьковым методом: ');
for i:=1 to n do
write(a [ i ],' ');
readln;readln
end.
При сортировке массива методом пузырька, сравниваются два соседних элемента массива. В том случае, если элемент массива с номером i оказывается больше элемента массива с номером i+1, происходит обмен значениями при помощи вспомогательной переменной buf.
Домашние задания: Другие предметы
Объясните пожалуйста, как отсортировать массив методом пузырька. как можно подробнее
прикольно на самом деле
Смотри на метод bubbleSort()
// Программа сортирует строки, которые ввел пользователь, в лексикографическом порядке.
class BubbleSort {
String array[];
BubbleSort(int actualSize) {
array = new String[actualSize];
}
String getString() throws java.io.IOException {
char symbol;
String string = "";
do {
symbol = (char) System.in.read();
if(symbol != '\n') {
string = string + symbol; // Конкатенация.
}
} while(symbol != '\n');
return string;
}
// Сортировка.
void bubbleSort(int usedSize) {
usedSize = usedSize - 1;
String buffer;
for(int pass = 0; pass < usedSize; pass++) { // Повторение сортировки.
con:
for(int i = 0; i < usedSize; i++) { // i - индекс элемента массива.
for(int j = 0; (j < array[i].length()) && (j < array[i+1].length()); j++) { // j - индекс строки.
if(array[i].charAt(j) > array[i+1].charAt(j)) { // Псевдообмен строк индексами.
buffer = array[i];
array[i] = array[i+1];
array[i+1] = buffer;
continue con;
} else if(array[i].charAt(j) < array[i+1].charAt(j)) {
continue con;
}
}
if(array[i].length() > array[i+1].length()) {
buffer = array[i];
array[i] = array[i+1];
array[i+1] = buffer;
}
}
}
}
void result(int usedSize) {
for(int i = 0; i < usedSize; i++) { // i - индекс элемента массива.
System.out.println((i+1) + ". " + array[i]);
}
}
}
class Main {
public static void main(String args[]) throws java.io.IOException {
int usedSize;
BubbleSort sort = new BubbleSort(99);
for(usedSize = 0; ; usedSize++) {
String string = sort.getString();
if(string.equals("exit")) {
break;
}
sort.array[usedSize] = string;
}
System.out.println("Неотсортированный массив:");
sort.result(usedSize);
sort.bubbleSort(usedSize);
System.out.println("Отсортированный массив:");
sort.result(usedSize);
}
} Похожие вопросы
- Объясните пожалуйста, как решать систему уравнения методом сложения?
- Алгебра 9 класс Объясните пожалуйста тему по алгебре " Геометрическая вероятность" Пожалуйста по-подробнее
- объясните пожалуйста тему по химии
- Чем можно объяснить победу Бориса Годунова на земском соборе? Как можно подробнее. Очень нужно
- Объясните, пожалуйста, как решать по формуле мощности алфавита. Ну, или её в целом.
- Помогите с математикой (объясните пожалуйста)
- объясните пожалуйста значения фразеологических оборотов
- Знатокам английского. Объясните, пожалуйста, почему в придаточном предложении Past Simple (попытка 2)
- Объясните пожалуйста номенклатуру алкенов?
- Объясните пожалуйста что такое ВНП, ВВП, национальный доход