`
zhonglunshun
  • 浏览: 138665 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

常用算法之一冒泡排序

阅读更多
冒泡排序算法
以前大学的时候总觉得算法很难记住,其实也不是,了解了原理,也并不难,只是那时候把问题看复杂了。

原理是:不断的拿左边那个数和右边那个数比较,只要在这个循环里左边那个数大于邮编那个数就代表本次循环有效,也就是这个数组还没有被完全排序完,因此进入下一轮循环,直到任意左边的数小于右边的数的时候,退出排序。

以下是我写的java代码:

public
void testsort(int arr[]) {
        boolean flag;
        do{
            flag = false;
            for(int i=0;i<arr.len;i++){
                if(arr[i]>arr[i+1])
                {
                    arr = swap(arr,i);
                    swap = true;
                }
            }
        }while(flag)
    }
    private int[] swape(int []arr,int i) {
        int temp = arr[i];
        arr[i+1]=arr[i];
        arr[i] = temp;
        return arr;
    }
 


伪代码为:

do
	swapped = false
	for i = 1 to numOfElements exclusive
		if leftElement > rightElement
			swap(leftElement, rightElement)
			swapped = true
while swapped
 


 

其他算法会陆续更新,欢迎吐槽。
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics