精华内容
下载资源
问答
  • js冒泡排序

    2017-02-03 15:13:34
    js冒泡排序的几种写法,如果要面试,可以借鉴一下
  • JavaScript 冒泡排序

    2021-01-08 17:00:40
    冒泡排序 1. 什么是冒泡排序? 计算机语言基础算法的一种。 把数组里面的数字按照规律排好序。 2. 算法描述: 比较相邻的两个数,如果第一个数比第二个数大,则两数交换位置 ; 对之后的相邻元素进行同样的工作,从...
  • JavaScript冒泡排序

    2020-02-27 17:10:30
    JavaScript冒泡排序 比较两个数据大小 内部交换两个变量的值 前一个和后一个数组元素相比较 重复1,2步骤 算法: var arr = [5, 4, 3, 2, 1]; for (var i = 0; i <= arr.length - 1; i++) { //外层循环管趟数 ...

    JavaScript冒泡排序

    1. 比较两个数据大小
    2. 内部交换两个变量的值 前一个和后一个数组元素相比较
    3. 重复1,2步骤

    算法:

    var arr = [5, 4, 3, 2, 1];
            for (var i = 0; i <= arr.length - 1; i++) {     //外层循环管趟数
                for (var j = 0; j <= arr.length - i - 1; j++) {     //里面的循环管每一趟的交换次数
                    //  内部交换两个变量的值 前一个和后一个数组元素相比较
                    if (arr[j] > arr[j+1]) {
                        var temp = arr[j];
                        arr[j] = arr[j+1];
                        arr[j+1] = temp;
                    } 
                }
            }
            document.write(arr);
    

    交换后输出:
    在这里插入图片描述

    展开全文
  • JS冒泡排序

    2020-03-01 17:16:23
    JS冒泡排序 思路: 1)比较两个相邻的元素,如果前面的大于后面的,则将他两的位置进行交换 2)每循环一轮,将最大的放在最后面 Javascript中实现冒泡排序的代码 function fun(arr){ for(var i=0;i<arr.length-1...

    JS冒泡排序

    思路:

    1)比较两个相邻的元素,如果前面的大于后面的,则将他两的位置进行交换
    2)每循环一轮,将最大的放在最后面

    Javascript中实现冒泡排序的代码

    function fun(arr){
        for(var i=0;i<arr.length-1;i++){
            //这里对数组减i是因为每次循环都会将最大的放在最后
            //所以需要减去上一次i的数值确保每次循环的最后一个元素不再进行循环
            for(var j=0;j<arr.length-i-1;j++){
                //如果a[j]大于a[j+1]则将数据进行调换
                if(arr[j]>arr[j+1]){
                  //定义变量a,用来交换数据
                    var a=arr[j+1];
                    arr[j+1]=arr[j];
                    arr[j]=a;
                }
            }
        }
    }
    var Arr=[5,8,1,9,0,2,3,6,4,7];
    console.log(Arr);
    fun(Arr);
    console.log(Arr);
    

    运行结果

    在这里插入图片描述

    总结

    第一个for循环在循环一个数字时,进入到第二个循环中,将大的数字放在后面,直到遍历完没有发现小的数字在后面时,再次进入第一个循环,遍历后面的数字,直到遍历完所有的数字。

    展开全文
  • JS 冒泡排序

    2021-04-27 18:25:42
    JS冒泡排序冒泡排序是一种算法,把一系列的数据按照一定顺序进行排列显示(从大到小或从小到大)。 <script> // 冒泡排序 var arr = [5, 4, 3, 2, 1]; // 数组里地元素顺序随意 var temp; // 用于交换...

    JS 中冒泡排序:

    冒泡排序是一种算法,把一系列的数据按照一定顺序进行排列显示(从大到小或从小到大)。

    <script>
            // 冒泡排序
            var arr = [5, 4, 3, 2, 1];  // 数组里地元素顺序随意
            var temp;  // 用于交换两个元素
            for (var i = 0; i <= arr.length - 1; i++) {  // 外层循环管躺数
                for (var j = 0; j < arr.length - 1 - i; j++) {  // 内层循环管交换次数
                	// 内部交换2个变量地值 前一个和后一个相比较
                    if (arr[j] <= arr[j + 1]) {
                        temp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = temp;
                    }
                }
            }
            console.log(arr);  //[1, 2, 3, 4 ,5]
        </script>
    

    它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法地名字由来是因为越小地元素会经由交换慢慢“浮”到数列地顶端。

    展开全文
  • javascript冒泡排序

    2021-06-12 13:15:32
    冒泡排序 function maopaoSort(arr){ for(let i=0;i<arr.length-1;i++){ for(let j=0;j<arr.length-i;j++){ if(arr[j]>arr[j+1]){ let flag = arr[j] arr[j] = arr[j+1] arr[j+1] = flag...

    冒泡排序

    function maopaoSort(arr){
    	for(let i=0;i<arr.length-1;i++){
    		for(let j=0;j<arr.length-i;j++){
    			if(arr[j]>arr[j+1]){
    				let flag = arr[j]
    				arr[j] = arr[j+1]
    				arr[j+1] = flag
    			}
    		}
    	}
    	return arr
    }
    

    选择排序

    function selectionSort(arr){
    	for(let i=0;i<arr.length-1;i++){
    		let min = i
    		for(let j=i+1;j<arr.length;j++){
    			if(arr[min]>arr[j]){
    				min = j
    			}
    		}
    		let flag = arr[min]
    		arr[min] = arr[i]
    		arr[i] = flag
    	}
    	return arr
    }
    

    插入排序

    function insertSort(arr){
    	for(let i=1;i<arr.length;i++){
    		let temp = arr[i]
    		let j = i
    		while(j>0 && arr[j-1] > temp){
    			arr[j] = arr[j-1]
    			j-=1
    			arr[j] = temp
    		}
    	}
    	return arr
    }
    

    希尔排序

    希尔排序的原理还是根据插入排序的思路,只不过做了一点改变

    function sheelSort(arr){
    	let gap = Math.floor(arr.length/2)
    	while(gap > 0){
    		for(let i = 0; i<arr.length;i++){
    			let temp = arr[i]
    			let j = i
    			while(j>0 && arr[j-1] > temp){
    				arr[j] = arr[j-gap]
    				j-=1
    				arr[j] = temp
    			}
    		}
    		gap = Math.floor(gap/2)
    	}
    	return arr
    }
    

    快速排序

    function quickSort(arr){
    	if(arr.length <= 1) return arr
    	let leftA = []
    	let rightA = []
    	let center = Math.floor(arr.length/2)
    	let currentValue = arr.splice(center,1)[0]
    	 // 返回的是一个数组,要拿到这个元素
    	 for(let i=0;i<arr.length;i++){
    		arr[i]>currentValue?rightA.push(arr[i]):leftA.push(arr[i])
    	}
    	return quickSort(leftA).concat(currentValue,quickSort(rightA))
    }
    
    展开全文
  • js 冒泡排序

    2019-07-28 17:19:32
    // 冒泡排序 var arr1 = [23, 35, 5, 34, 4, 12, 7, 0, 78, 19]; function bubbleSort(arr, isAsc) { // arr 进行排序的数组 // isAsc 是否升序排序,默认升序true isAsc = isAsc == undefined ? true :...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 25,694
精华内容 10,277
关键字:

js冒泡排序