Java 中的气泡发布 - 对整数数组进行排序
气泡排序算法是用于解释大学课堂排序的经典算法之一。由于其简单性,它也用于 C 或 C++ 练习。您经常听说如何编写一个程序,该程序使用 Bubble 排序算法对数组进行排序,以按升序或降序对整数数组进行排序。
在 Bubble 排序算法中,对无序数组进行排序从第一个元素开始,并将其与相邻元素进行比较,如果它更大, 他们被交换了。通过这样做,我们在第一次迭代后的最后得到最大的数字。所以对于 n元素,你需要 n-1 迭代和 n-1 比较到最大值,并以等于 O(n²).这使得它在包含大量元素的表上排序时不太有用。在这种情况下,它成为最慢和最重的排序算法,将其列为糟糕的排序算法之一。让我们在这个例子中逐步看一下使用气泡排序对数组进行排序,正如我们在每一步之后所说的那样,对最大的数字进行排序。
Collections.sort().
References:
Java 程序冒泡排序
Java 中的气泡排序算法,使用 Example
在 Bubble 排序算法中,对无序数组进行排序从第一个元素开始,并将其与相邻元素进行比较,如果它更大, 他们被交换了。通过这样做,我们在第一次迭代后的最后得到最大的数字。所以对于 n元素,你需要 n-1 迭代和 n-1 比较到最大值,并以等于 O(n²).这使得它在包含大量元素的表上排序时不太有用。在这种情况下,它成为最慢和最重的排序算法,将其列为糟糕的排序算法之一。让我们在这个例子中逐步看一下使用气泡排序对数组进行排序,正如我们在每一步之后所说的那样,对最大的数字进行排序。
Java中的气泡排序实现
这是一个实现气泡排序算法的 Java 程序。public class tri_a_bulles_array{让我们看看这个程序是什么样子的:
public static void main(String[] args) {
int T[] = {99, 45, 68, 18, 34, 26, 50, 8, 55, 10};
System.out.print(排序前”);
for (int n:T)
System.out.print(n+ ”);
T = tri_a_bulles(T);
System.out.print(\n排序后”);
for (int n:T)
System.out.print(n+ ”);
}
static int[] tri_a_bulles(int T[])
{
int temp;
for(int i = T.length-1 ; i>=1 ; i--)
{
for(int j = 0 ; j<我;j++)
if(T[j] >T[d+1])
{
温度 = T[d+1];
T[j+1]=T[j];
T[j]=温度;
}
}
返回 T;
}
}
排序前 99 45 68 18 34 26 50 8 55 10您可以进一步查看排序方法Java 预定义java.util.Arrays它们是 Arrays.sort() 和
排序后 8 10 18 26 34 45 50 55 68 99
References:
Java 程序冒泡排序
Java 中的气泡排序算法,使用 Example