1. 冒泡排序
1.1. 算法的原理
1) 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2) 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
3) 针对所有的元素重复以上的步骤,除了最后一个。
4) 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比...
分类:
编程语言 时间:
2014-11-19 01:27:33
阅读次数:
338
冒泡排序:
就是按索引逐次比较相邻的两个元素,如果大于/小于(取决于需要升序排还是降序排),则置换,否则不做改变
这样一轮下来,比较了n-1次,n等于元素的个数;n-2, n-3 ... 一直到最后一轮,比较了1次
所以比较次数为递减:从n-1 到 1
那么总的比较次数为:1+2+3+...+(n-1), 以等差公式计算:(1+n-1)/2*(n-1) ==> n/2*(n-1) ==...
分类:
编程语言 时间:
2014-10-15 19:44:41
阅读次数:
198
今天大鹏哥跟大家学习下交换排序中的冒泡排序。
为什么叫冒泡排序呢,因为在这种排序过程中越大的元素会经由交换慢慢”浮”到数列的顶端,故名冒泡排序。冒泡排序就是把小的元素往前调或者把大的元素往后调。
冒泡排序基本操作:
比较相邻的元素,如果第一个比第二个大,则交换他们两个。
Java实现如下:
...
分类:
其他好文 时间:
2014-09-16 17:30:10
阅读次数:
151
1、冒泡排序
1)原理说明:重复遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
2)代码实现:
package com.test.sort;
public class BubbleSort
{
public static void sort(int[] data)
{
...
分类:
编程语言 时间:
2014-06-16 20:00:39
阅读次数:
253
冒泡排序
思路:就是每次将最大或最小的元素放到数组的最后,so easy!时间复杂度为(O(n^2))
public class BubbleSort {
public static void bubbleSort(int[] a) {
for (int j = 1; j < a.length; j++) {
for (int i = 0; i < a.length - j; i+...
分类:
编程语言 时间:
2014-04-30 22:12:40
阅读次数:
309