JS 的冒泡排序】的更多相关文章

冒泡排序 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法. 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成. 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名. 原理: 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. 针对所有的元素…
以前参加面试的时候,被问到过让用JS实现一个快速排序,当时太年轻,并没有回答上来. 于是,这里便把三种排序都用JS来做了一下.结合html,从input文本框中获取输入进行排序. 关于这几种算法的原理,我在这里也不过多叙述了.必要的地方,我在代码里面注释了一下的. 以下是代码: index.html <!DOCTYPE html> <html> <head> <title>Sorting</title> <link rel="st…
排序问题相信大家都比较熟悉了.用js简单写了一下几种常用的排序实现.其中使用了es6的一些语法,并且不仅限于数字--支持各种类型的数据的排序.那么直接上代码: function compare (a, b) { return (a - b) > 0; } // 冒泡排序O(n^2) const bubbleSort = function (arrayData, compareFn = compare) { let len = arrayData.length; for (let i = len…
文章地址 https://www.cnblogs.com/sandraryan/ js数组的冒泡排序是最经典的一种排序方式(我以为). 冒泡排序是吧一组数组的元素两两比较,交换位置,通过多轮比较,实现从大到小或者从小到大的排序. var arr = [1,0,5,6,3,9,22,49,20,11,78,9]; // 创建一个新数组 for(var i = 0; i <= arr.length-1; i++){ // 外层循环控制比较几轮 for(var j = 0; j <= arr.len…
冒泡排序: 随便从数组中拿一位数和后一位比较,如果是想从小到大排序,那么就把小的那一位放到前面,大的放在后面,简单来说就是交换它们的位置,如此反复的交换位置就可以得到排序的效果. var arr = [3,1,4,2,5,21,6,15,63]; function sortA(arr){ for(var i=0;i<arr.length-1;i++){ for(var j=i+1;j<arr.length;j++){ //获取第一个值和后一个值比较 var cur = arr[i]; if(c…
冒泡排序: var a = [2,1,4,3,6,5]; for(var d = 0 ; d< a.length; d++){ for(var b = d+1; b < a.length; b++){ if (a [d] > a [b] ); var c = a [d]; a [d] = a [b]; a [b] = c ; } } for(var e in a){ document.write(a [e] ); } 数组去重: var arr = [9,9,1, 1, 2, 2, 3,…
    var arr = [1,4,2,9,7,6,5,4,7,5];     // 冒泡排序(通俗的说就是j 和 j+1打,谁赢了谁去后面)       for(var i = 1;i<arr.length;i++){         for(var j = 0;j<arr.length - i;j++){             if(arr[j]>arr[j+1]){                 var temp =  arr[j];                 arr[…
//冒泡排序 let arr = [1, 6, 3, 7, 5, 9, 2, 8]; function sort(arr) { //升序 console.time("冒泡排序耗时") let num1 = null; for (let i = 0; i < arr.length - 1; i++) { //外层循坏的作用是每次循坏找出一个最大数放在这个数组的最后面 for (let j = 0; j < arr.length - i - 1; j++) { //内层循坏的作…
// 冒泡排序 从小到大 function maoPaoPaiXu(arr) { // 控制循环的比较的轮次 for (var i = 0; i < arr.length - 1; i++) { // 控制没轮比较的次数 for (var j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { var temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; }…
代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>123</title> </head> <style> .div1{ width:80px; height:45px; border:2px solid red; display:none; float:left; background:gray; font-siz…