`
zhouyrt
  • 浏览: 1178436 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

冒泡排序(交换)

 
阅读更多

JavaScript

function bubbleSort(ary) {
    var i, j, temp, len = ary.length;
    
    for(var i=1; i<len; i++) {
        for(j=len-1; j>=i; j--) {
            temp = ary[j];
            if(temp < ary[j-1]) {
                ary[j] = ary[j-1];
                ary[j-1] = temp;
            }
        }
    }
    
    return ary;
}
var ary = [5,4,3,2,1];
console.log(bubbleSort(ary));

 

Java

public class Test {
	
	public static void bubbleSort(int[] ary) {
		int i, j, temp;
		int len = ary.length;
		
		for(i=1; i<len; i++) {
			for(j=len-1; j>=i; j--) {
				temp = ary[j];
				if(ary[j] < ary[j-1]) {
					ary[j] = ary[j-1];
					ary[j-1] = temp;
				}
			}
		}
		
	}
	
	public static void main(String[] args) {
		int[] ary = {5,4,3,2,1};
		Test.bubbleSort(ary);
		for(int it : ary) {
			System.out.println(it);
		}

	}	
}

 

#include <stdio.h>

void bubbleSort(int ary[], int len) {
	int i, j, temp;
	
	for(i=1; i<len; i++) {
		for(j=len-1; j>=i; j--) {
			temp = ary[j];
			ary[j] = ary[j-1];
			ary[j-1] = temp;
		}
	}
}

main() {
	int i;
	int ary[]  = {5,4,3,2,1};
	bubbleSort(ary, 5);
	for(i=0; i<5; i++) {
		printf("%d", ary[i]);
	}
	
}
 
0
4
分享到:
评论

相关推荐

    交换排序之冒泡排序.cpp

    交换排序之冒泡排序.cpp

    冒泡排序及其改进算法C语言实现 冒泡排序及其改进算法C语言实现 冒泡排序及其改进算法C语言实现

    2改进的冒泡排序,在一次冒泡的过程中,如果没有发生交换,则已经有序 3进一步改进的冒泡排序,如果在某次冒泡过程中,最后一次进行交换的位置为flag,则表示flag之后的序列已经有序,那么下一次冒泡就无需比较flag...

    C#四种排序方法--交换排序 选择排序 冒泡排序 插入排序

    交换排序 选择排序 冒泡排序 插入排序

    java基础冒泡排序.ppt

    冒泡排序详解,简单而详细的讲清楚了,什么是冒泡排序。 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首...

    冒泡排序-排序过程 冒泡排序-排序过程

    冒泡排序是一种简单的排序算法,其基本思想是通过重复地遍历要排序的列表,比较相邻的两个元素,如果它们的顺序错误就把它们交换过来。遍历列表的工作是重复进行的,直到没有再需要交换的元素,也就是说该列表已经...

    经典排序算法,有选择排序,冒泡排序,交换排序,谢尔排序,插入排序基数排序

    根据给定的文件信息,我们将深入探讨几种经典的排序算法,包括选择排序、冒泡排序、交换排序、希尔排序、插入排序以及基数排序。这些算法在计算机科学领域内有着广泛的应用,各自具有独特的特点和适用场景。 ### 1....

    冒泡排序 的动态演示 动画 C++写

    冒泡排序是一种基础且经典的排序算法,它通过不断交换相邻的逆序元素来逐步排序一个序列。在本项目中,我们将深入探讨C++如何实现冒泡排序的动态演示动画。这个程序不仅会进行排序,还会以动画的形式展示排序的过程...

    基于C++冒泡排序法

    冒泡排序的工作原理基于比较和交换相邻元素的过程。它重复地遍历待排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成...

    实验3 冒泡排序程序

    冒泡排序是一种基础且经典的排序算法,主要用于对一组数值进行升序或降序排列。它的基本思想是通过不断地比较相邻元素并交换位置,使较大的(或较小的)元素逐渐“浮”到序列的尾部,就像水底下的气泡慢慢上升到水面...

    冒泡排序练习题1

    冒泡排序是一种基础的排序算法,它通过重复遍历待排序的序列,比较相邻的元素并根据需要交换它们,直到序列变得有序。本题涉及多个关于冒泡排序及其变种的应用题目。 1. 第一段代码段是冒泡排序的一个简化版本,只...

    数据结构:交换排序-冒泡排序实验指导

    ### 数据结构:交换排序-冒泡排序实验指导 #### 实验背景与目标 在计算机科学领域,数据结构和算法是核心研究对象,其中排序算法作为基础且重要的算法之一,广泛应用于各类数据处理场景。本实验旨在深入理解并掌握...

    C语言冒泡排序法PPT课件.pptx

    冒泡排序是指一种简单的排序算法,通过反复比较和交换相邻记录的顺序来排序。冒泡排序的主要思想是:在每一趟排序中,通过比较相邻记录的大小,如果前者的记录大于后者的记录,则交换它们的顺序,以此达到排序的目的...

    C++语言的算法实现包括插入排序冒泡排序堆排序快速排序

    冒泡排序是通过比较相邻元素并交换来实现排序的。每次遍历都能确保最大(或最小)的元素“浮”到数组的一端。C++实现时,同样采用两层循环,外层循环控制遍历次数,内层循环进行相邻元素的比较和交换。冒泡排序的...

    冒泡排序和选择排序_C语言_冒泡排序_选择排序_

    冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字...

    java 冒泡排序 数组冒泡排序

    冒泡排序是一种基础且经典的排序算法,它通过不断交换相邻两个元素的位置,使得每一次遍历都能将当前未排序部分的最大(或最小)元素“冒”到已排序部分的末尾。在Java编程语言中,我们可以很容易地实现这个算法。...

    C语言冒泡排序PPT课件.pptx

    冒泡排序是一种简单的排序算法,它的基本原理是通过多次扫描数组,比较相邻的元素,并将较小的元素交换到前面,从而实现排序。下面是冒泡排序的详细知识点: 冒泡排序的基本原理: 冒泡排序的基本原理是对存放原始...

    读懂冒泡排序

    冒泡排序是一种基础的排序算法,它的工作原理是通过重复遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行直到没有再需要交换,也就是说该数列已经排序完成。这个...

    Verilog实现冒泡排序

    冒泡排序是一种基础的计算机排序算法,它的工作原理是通过重复遍历要排序的数列,比较每对相邻元素,如果顺序错误就把它们交换过来。排序过程会重复进行,直到没有需要交换的元素为止,这时数列就完全排序好了。 ...

    js冒泡排序两种排序代码

    冒泡排序比较索引 0 中的元素,如果第 0 索引大于第 1 索引,则交换值,如果第 0 索引小于第 1 索引,则没有任何反应。 然后,第 1 个索引与第 2 个索引进行比较,然后第 2 个索引与第 3 个索引进行比较,依此类推...

    冒泡排序基本思想和算法冒泡排序基本思想和算法.

    冒泡排序是交换排序的一种基本思想,通过比较和交换记录的关键字,达到排序的目的。下面对冒泡排序的基本思想、算法和性能进行详细的分析。 冒泡排序基本思想 冒泡排序的基本思想是:两两比较待排序记录的关键字,...

Global site tag (gtag.js) - Google Analytics