Tag: 冒泡 排序

优化冒泡排序(Java)

我想知道如何优化冒泡排序,以便它忽略已经排序的元素,即使在第一次传递之后。 Eg. [4, 2, 3, 1, 5, 6] –> [2, 3, 1, **4, 5, 6**] 我们观察到[4,5,6]已经按排序顺序,如何修改我的代码,以便在下一遍中忽略这3个元素? (这意味着排序会更有效?)你建议使用递归方法吗? public static void bubblesort(int[] a) { for(int i=1; i<a.length; i++) { boolean is_sorted = true; for(int j=0; j a[j+1]) { int temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; is_sorted = false; } } if(is_sorted) return; } […]