2015-11-18 12:16
算法入门必学之冒泡算法(冒泡排序)
最近服务器问题一直没写文章,现在换到腾讯云了,虽然带宽成1M了,但是速度比以前快躲了,感谢马大大的福利。言归正传,本篇文章来讨论讨论冒泡排序算法。
冒泡排序算法乃是经典的算法,也有当做面试题过,属于基础中的基础,但是,个人觉得这种排序很耗时,效率慢,也有可能作为一个刻板用吧,所以大家只要知道就好了。
原理很简单也很常规,拿从小到大排序(升序)举例,就是依次比较相邻的2个元素,如果第一个元素比第二个元素大,就交换,重复这样的步骤。
下面看利用java写的代码:
public class Test011 {
public static void main(String args[]){
int[] numArr={7,12,4,33,7,9,16,11,24,28};
Test011 obj=new Test011();
obj.BubbleSort(numArr);
for (int n : numArr) {
System.out.println(n);
}
}
public void BubbleSort(int[] obj){ //算法函数
int temp=0;
for(int i=obj.length-1;i>0;--i){
for(int j=0;j<i;++j){
if(obj[j+1]<obj[j]){
temp=obj[j];
obj[j]=obj[j+1];
obj[j+1]=temp;
}
}
}
}
}
之前也说过,这种算法事比较简单的算法,是比较符合人最基本的逻辑的,但是冒泡算法是比较耗时,数据量稍微大点就能发现会有很多不必要的比较,所以,在数据规模很小,代码又不想复杂时,可以采用。数据规模比较大时,最好用其它排序方法。
- 原码、反码、补码的换算方法
分类相关推荐 / Cat Related Articles
- 暂无相关文章

