JavaScript冒泡排序

工作开始就从页面入职,那时候还不叫前瑞,叫页面设计,后来转了管理岗就很多年没有问津技术,和老友一聊,自已的以前的那点技术成了古董,虽然老将伏骥,但是志在千里,现在开始重新进入学习前瑞技术,写好每一天,对自已提升。

 

今天开始从冒泡排序开始,梳理学习思路如下:

        首先双重for循环是基础,第一重循环控制数组遍历的趟数,数组有多少元素,也就是数组的长度lenght,趟数总比数组趟数少一,所以趟数就是:lenght-1.

        第二重循环控制每趟的次数,每趟的次数的规律总结后发现,是数组长度lenght减去第一重循环的趟数再减去1,也就是说当趟数为0时,次数是数组的长度减一,如果数组长度是6,则第一趟循环的次数是5次,如果趟数为1则是6-1-1,第二趟次数是4,依次类推!

 1 //函数方式实现冒泡排序
 2         function bubbleSort(arr) {  //封装一个气泡排序的函数 
 3             var le = arr.length; //设置一个变量等于数组的长度  
 4             for (var i = 0; i < le - 1; i++) { //外循环趟数,数组的长度减一就是所循环的趟数    
 5                 for (var j = 0; j < le - 1 - i; j++) { //内循环控制交换每一趟的次数     
 6                     if (arr[j] > arr[j + 1]) { //相邻元素两两对比
 7                                 
 8                         var temp = arr[j + 1]; //设置一个临时变量存储元素,用于元素交换数值
 9                                 
10                         arr[j + 1] = arr[j];        
11                         arr[j] = temp;      
12                     }    
13                 }  
14             }  
15             return arr;
16         }
17         var arr = [3, 44, 38, 5, 47, 15, 36, 26, 27, 2, 46, 4, 19, 50, 48];
18         console.log(bubbleSort(arr)); //[2, 3, 4, 5, 15, 19, 26, 27, 36, 38, 44, 46, 47, 48, 50];

 

126201

posted @ 2021-03-01 21:24  撞倒树的兔子  阅读(37)  评论(0)    收藏  举报