-
Notifications
You must be signed in to change notification settings - Fork 30
/
bubblesort.java
47 lines (38 loc) · 1.36 KB
/
bubblesort.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
public class bubblesort {
// Method to perform the bubble sort algorithm
public static void sort(int[] array) {
int length = array.length;
// Loop through the array multiple times
for (int pass = 0; pass < length - 1; pass++) {
boolean isSorted = true;
// Compare adjacent elements and swap if needed
for (int i = 0; i < length - pass - 1; i++) {
if (array[i] > array[i + 1]) {
// Swap the two elements
int temp = array[i];
array[i] = array[i + 1];
array[i + 1] = temp;
// Mark that a swap occurred
isSorted = false;
}
}
// If no swaps were made, the array is already sorted
if (isSorted) {
break;
}
}
}
// Main method to test the bubble sort
public static void main(String[] args) {
int[] numbers = {45, 32, 18, 27, 10, 90};
System.out.println("Array before sorting:");
for (int number : numbers) {
System.out.print(number + " ");
}
sort(numbers); // Call the sort method
System.out.println("\nArray after sorting:");
for (int number : numbers) {
System.out.print(number + " ");
}
}
}