如何利用JavaScript实现排序算法浅析

 更新时间:2021年11月03日 10:16:55   作者:六叶草~  
排序算法是笔试中经常出现的,提起排序算法就一定要提下算法复杂度和大O表示法,算法复杂度是指算法在编写成可执行程序后,运行时所需要的资源,资源包括时间资源和内存资源,这篇文章主要给大家介绍了关于如何利用JavaScript实现排序算法的相关资料,需要的朋友可以参考下

冒泡排序

冒泡排序就是重复从序列右边开始比较相邻两个数字的大小,再根据结果交换两个数字的位置。

JavaScript代码实现:

代码简介:声明一个数组变量,通过while给数组变量赋值,当输入“#”时停止输入,然后遍历相邻的两个数,让相邻的两个数升序排列,遍历n-1次实现排序;

 var a = Array();
    flag=true;
    var i = 0;
    var j = 0;
    var temp = 0;
    while(flag){
        var b = prompt("请输入第i个数字:");
        if(b=="#"){
          flag=false;
        }else{
            a[i] = b;
        }
        i++;
    }
   
    s = a.length;
    for(j=0;j<s;j++){
        console.log(a[j]); 
    }
    for(j=1;j<s;j++){
       for(i=0;i<s-j;i++){
           if(a[i]>a[i+1]){
                temp=a[i];
                a[i]=a[i+1];
                a[i+1]=temp;
           }
       }
    }
    for(j=0;j<s;j++){
        console.log("升序:",a[j]); 
    }

输入3,4,2,8,6。输出结果如下:

选择排序

选择排序就是重复从待排序的数据中寻找最小值,将其与序列最左边的数字进行交换

JavaScript代码实现:

    var a = Array();
    flag=true;
    var i = 0;
    var j = 0;
    var temp = 0;
    while(flag){
        var b = prompt("请输入第i个数字:");
        if(b=="#"){
          flag=false;
        }else{
            a[i] = b;
        }
        i++;
    }
    s = a.length;
    for(j=0;j<s;j++){
        console.log("数组:",a[j]); 
    }
    for(i=0;i<s;i++){
        for(j=0;j<s;j++){
            if(a[i]>a[j]){
                temp = a[j];
                a[j] = a[i];
                a[i] = temp;
            }
        }
    }
    for(j=s-1;j>=0;j--){
        console.log("选择排序:",a[j]); 
    }

插入排序

插入排序算法:通过构建有序数组元素的存储,对未排序的数组元素,在已排序的数组中从最后一个元素向第一个元素遍历,找到相应位置并插入。

js代码实现:

var flag = true;
    var a = new Array();
    var i=0;
    while(flag){
        
        var s = prompt('请输入一个数:');
        if(s=='#'){
            flag=false;
        }else{
            a[i] = s;
        }
        i++;
    }
    console.log(a);
    for(var i=1;i<a.length;i++){
    for(var j = i;j>0;j--){
        if(a[j-1]>a[j]){
            var temp = a[j-1];
            a[j-1] = a[j];
            a[j] = temp;
        }
    }
}
for(var i=0;i<a.length;i++){
console.log(a[i]);
}

输入5,3,7,4,8,1,6。输出结果如下:

总结

到此这篇关于如何利用JavaScript实现排序算法的文章就介绍到这了,更多相关js实现排序算法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Bootstrap富文本组件wysiwyg数据保存到mysql的方法

    Bootstrap富文本组件wysiwyg数据保存到mysql的方法

    这篇文章主要为大家详细介绍了Bootstrap富文本组件wysiwyg数据保存到mysql的方法,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • 关于promise.all()的使用及说明

    关于promise.all()的使用及说明

    这篇文章主要介绍了关于promise.all()的使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 为javascript添加String.Format方法

    为javascript添加String.Format方法

    每次在javascript中用加号合成字符串,真的没法忍受了,今天终于找到一高手写的方法,与大家分享。
    2009-11-11
  • JavaScript Sort 的一个错误用法示例

    JavaScript Sort 的一个错误用法示例

    这篇文章主要介绍了JavaScript Sort 的一个错误用法示例,本文分析了一个Sort实例得到了这个错误用法并给出了解决方法,需要的朋友可以参考下
    2015-03-03
  • 微信小程序的开发范式BeautyWe.js入门详解

    微信小程序的开发范式BeautyWe.js入门详解

    这篇文章主要介绍了微信小程序的开发范式BeautyWe.js详解,它是一套专注于微信小程序的企业级开发范式,它的愿景是:让企业级的微信小程序项目中的代码,更加简单、漂亮,需要的朋友可以参考下
    2019-07-07
  • JavaScript 数组去重并统计重复元素出现的次数实例

    JavaScript 数组去重并统计重复元素出现的次数实例

    下面小编就为大家分享一篇JavaScript 数组去重并统计重复元素出现的次数实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • 详解uniapp无痛刷新token方法

    详解uniapp无痛刷新token方法

    为了给用户一个流畅的体验,token过期后需要重新请求新的token替换过期的token。本文将详细介绍uniapp无痛刷新token方法。
    2021-06-06
  • 前端JavaScript实现本地模糊搜索功能的方法实例

    前端JavaScript实现本地模糊搜索功能的方法实例

    对于模糊查询,一般都是传关键字给后端,由后端来做。但是有时候一些轻量级的列表前端来做可以减少ajax请求,在一定程度上提高用户体验,这篇文章主要给大家介绍了关于前端JavaScript如何实现本地模糊搜索功能的相关资料,需要的朋友可以参考下
    2021-07-07
  •  javascript学数组中的foreach方法和some方法

     javascript学数组中的foreach方法和some方法

    这篇文章主要介绍了 javascript学数组中的foreach方法和some方法,文章相关内容和代码详细,具有一定的参考价值,需要的小伙伴可以参考一下,希望对你的学习有所帮助
    2022-03-03
  • js实现导入导出功能实例代码(FileSave.js)

    js实现导入导出功能实例代码(FileSave.js)

    这篇文章主要给大家介绍了关于js实现导入导出功能(FileSave.js)的相关资料,FileSaver.js是在客户端保存文件的解决方案,非常适合在客户端上生成文件的Web应用,需要的朋友可以参考下
    2023-11-11

最新评论