当前位置:学者斋 >

计算机 >java语言 >

用Java写一个冒泡排序方法

用Java写一个冒泡排序方法

引导语:冒泡排序也是Java语言面试可能会出现的题目,以下是本站小编分享给大家的`用Java写一个冒泡排序方法,欢迎阅读学习!

用Java写一个冒泡排序方法

 用Java写一个冒泡排序

答:冒泡排序几乎是个程序员都写得出来,但是面试的时候如何写一个逼格高的冒泡排序却不是每个人都能做到,下面提供一个参考代码:

12345678910111213141516171819202122import arator;/*** 排序器接口(策略模式: 将算法封装到具有共同接口的独立的类中使得它们可以相互替换)* @author骆昊**/public interface Sorter {/*** 排序* @param list 待排序的数组*/public <T extends Comparable<T>> void sort(T[] list);/*** 排序* @param list 待排序的数组* @param comp 比较两个对象的比较器*/public <T> void sort(T[] list, Comparator<T> comp);}
123456789101112131415161718192021222324252627282930313233343536373839404142import arator;/*** 冒泡排序* * @author骆昊**/public class BubbleSorter implements Sorter {@Overridepublic <T extends Comparable<T>> void sort(T[] list) {boolean swapped = true;for (int i = 1, len = th; i < len && swapped; ++i) {swapped = false;for (int j = 0; j < len - i; ++j) {if (list[j]areTo(list[j + 1]) > 0) {T temp = list[j];list[j] = list[j + 1];list[j + 1] = temp;swapped = true;}}}}@Overridepublic <T> void sort(T[] list, Comparator<T> comp) {boolean swapped = true;for (int i = 1, len = th; i < len && swapped; ++i) {swapped = false;for (int j = 0; j < len - i; ++j) {if (are(list[j], list[j + 1]) > 0) {T temp = list[j];list[j] = list[j + 1];list[j + 1] = temp;swapped = true;}}}}}

标签: 冒泡排序 JAVA
  • 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/java/5m0jw.html