用Java写一个冒泡排序方法
来源:才华咖 本文已影响2.09W人
来源:才华咖 本文已影响2.09W人
引导语:冒泡排序也是Java语言面试可能会出现的题目,以下是本站小编分享给大家的`用Java写一个冒泡排序方法,欢迎阅读学习!
用Java写一个冒泡排序
答:冒泡排序几乎是个程序员都写得出来,但是面试的时候如何写一个逼格高的冒泡排序却不是每个人都能做到,下面提供一个参考代码:
12345678910111213141516171819202122 | import 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); } |
123456789101112131415161718192021222324252627282930313233343536373839404142 | import arator; /**
* 冒泡排序
*
* @author骆昊
*
*/ public class BubbleSorter implements Sorter {
@Override
public <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 ;
}
}
}
}
@Override
public <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程序连接各种数据库的8种方法
2017最新javascript中AJAX用法
Java程序调用C/C++语言函数的方法
java调用的几个方法
Java认证辅导:Java实现二叉树遍历算法
java序列化的方法有哪些
hr面试Java程序员的方法
java程序员的学习方法
Java程序学习方法
简单java程序创建方法
用Java编写一个队列类
JAVA程序员自荐书
如何用Java创建一个简单的Swing应用程序
java常见的排序算法的代码
java程序运行方法
小熊冒泡泡
第一个java程序
编写Java无脚本的JSP页面的一些方法
Java语言第一个javaapplet
用Javascript进行简单的Table点击排序
java程序员辞职信3例
java序列化的方法
java堆排序的算法思想的分析
如何使用记事本编写java程序