当前位置:   article > 正文

排序算法(冒泡、选择、插入、快速、堆、归并)排序_插入排序冒泡排序二分归并排序和快速排序算法中什么算法的时间复杂度最低) site:blog.csdn

插入排序冒泡排序二分归并排序和快速排序算法中什么算法的时间复杂度最低) site:blog.csdn.net

冒泡排序:时间复杂度为O(n^2),空间复杂度为O(1),稳定

function bubbleSort(arr){
   
  //数组的长度
  let len=arr.length;
  for(let i=0;i<len-1;i++){
   
  	//相邻的数进行比较
    for(let j=0;j<len-1-i;j++){
   
       if(arr[j]>arr[j+1]){
   
         [arr[j],arr[j+1]]=[arr[j+1],arr[j]]; 
       }
    }
    if(isOk){
   
    	break;
    }
 }
 return arr;
 }
let arr=[9,3,5,10,-3];
console.log(bubbleSort(arr));
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

选择排序:时间复杂度为o(n^2),空间复杂度为o(1),不稳定

function selectionSort(arr){
   
  let minIndex, temp;
  let len=arr.length;
  for(let i=0;i<len-1;i++){
   
  	 //最小的数的下标
     minIndex=i;
     for(let j=i+1;j<len;j++){
   
        if(arr[j]<arr[minIndex]){
   
        	minIndex=j;
        }
     }
     temp=arr[i];
     arr[i]=arr[minIndex];
     arr
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/517466
推荐阅读
相关标签
  

闽ICP备14008679号