排序和查找、链表、二叉树、队列、堆栈、字符串以及数组

排序:

1、冒泡排序:

原理:  比较相邻的元素,  如果第一个比第二个大,就交换两个;

对每一个相邻的元素作同样的工作,从开始第一对到结尾最后一对,这样在最后的元素应该是最大的数。

针对所有的元素重复这个比较,除最后一个。

代码实现:

var arr = [5,4,3,2,1,6,7,8,9,10]

function bubbleSort(arr) {
    var length = arr.length;
    for (var i = 0; i < length - 1; i++) {    // length-1最后一个已经是在前一个进行排序
        for (var j = 0; j < length- 1 - i; j++) {  //  length- 1 - i  (之前拍好顺序的则无需再排)
            if (arr[j] > arr[j+1]) {        // 相邻元素两两对比   (如果降序  判断条件则是arr[j] < arr[j+1])
                var temp = arr[j+1];        // 元素交换
                arr[j+1] = arr[j];
                arr[j] = temp;
            }
        }
    }
    return arr;
}
bubbleSort(arr)   // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]     明白原理之后 可以学习js原生的sort()API

算法(arithmetic)相关推荐

  1. 步进电机运动八大算法

    引导一种模块化(Module)设计思想,将传统步进电机的控制器(controller).驱动器(Driver).运动算法(Arithmetic)三合一. 对比国内外步进电机驱动原理和已有工作,结合各种 ...

  2. 算术优化算法AOA(学习笔记_10)

    1. 算法简介 算术优化算法(Arithmetic Optimization Algorithm, AOA)是一种根据算术操作符的分布特性实现全局寻优的元启发式优化算法. 乘除运算提高位置更新的全局分 ...

  3. 黏菌优化算法SMA与算术优化算法AOA及其联合改进

    0.简介 黏菌优化算法(Smile Mould Algorithm, SMA)和算术优化算法(Arithmetic Optimization Algorithm,AOA)是最近提出的新型元启发式优化算 ...

  4. 5.19 - Stacks and Queues

    Decode String k[encoded_string] 的编码字符串,将编码的字符重复k次,最后打印出一个完整的字符串. 思路:使用栈结构,由里层向外层,层层解码,当遇到了[ 字符时,向sta ...

  5. endp 汇编start_汇编语言程序设计:[20]汇编计算器

    输入如下代码 ;==给DD数x赋值的宏==将DD型的两个数X,Y其中Y的值赋给X give macro x,y mov ax,y mov x,ax mov ax,y[2] mov x[2],ax en ...

  6. Z3求解器简介以及特定约束条件下求出所有可行解

    Z3求解器 1.Z3求解器简介: Z3是微软研究院开发的高性能定理证明器.Z3用于许多应用,如:软件/硬件验证和测试,约束解决,混合系统的分析,安全,生物学(在硅分析),和几何问题. 2.Z3求解器u ...

  7. Python:实现arithmetic算术算法(附完整源码)

    实现arithmetic算术算法 def is_arithmetic_series(series: list) -> bool:if not isinstance(series, list):r ...

  8. 算法编程Algos Programming

    算法编程Algos Programming 不同算法的集合,用于编程比赛,如ACM ICPC. 算法按主题划分.大多数算法都可以从文件中按原样运行.每种算法都有一个参考问题,并对其时间和空间复杂度作了 ...

  9. 算法(3)简单四则运算

    1.0 问题描述 实现10以内四则运算(只包含数字,±*/和小括号) 2.0 问题分析 四则运算使用"后缀表达式"算法来计算,后缀表达式可以无需考虑运算符优先级,直接从左至右依次计 ...

最新文章

  1. 大盘点 | 2020年5篇图像分割算法最佳综述
  2. exchange 2007 碰到NDR
  3. 2008 R2 Server core 下的常用命令
  4. 使用rmi实现ehcache集群模式
  5. 【Java语法】比较两个字符串是否相等
  6. LeetCode 322. 零钱兑换(DP)
  7. webform计算某几列结果_利用DataTable.Compute等方法和属性做各种统计(某一列的总和sum、不重复的某列记录数distinct)...
  8. java exec source报错_Mac 下maven路径报错的坑
  9. 【Kettle】如何输出固定格式报表
  10. 04-07递归解法问题
  11. 卸载注册表_3Dmax软件无法安装?3Dmax软件正确卸载方法,重装无忧
  12. 调幅广播系统建模与仿真
  13. 计算机控制系统电阻加热课设,计算机控制系统课程设计资料.doc
  14. 全国计算机等级考试二级-公共基础知识
  15. JAVAWEB-NOTE03
  16. Python分析捕食者和被捕食者模型 Lotka--Volterra方程 | 拟合求解a,b,c,d
  17. MOOS程序解析记录(1)
  18. 【Charles基础】Charles抓取微信小程序乱码,抓取指定的请求
  19. 华中科技大学计算机学院刘明,彭芳瑜-华中科技大学机械科学与工程学院
  20. 化工厂人员定位如何实现,可以解决哪些问题?

热门文章

  1. 实物短缺下的现货白银操作建议
  2. 无线充电器的CE认证、FCC认证、IC认证测试标准
  3. 电脑不显示无线连接网络连接服务器,连接wifi后显示无internet访问权限怎么解决...
  4. iOS字体大小适配机型的几种方法
  5. 如何加声调口诀_小学拼音大全含:记忆口诀.拼读.书写.标调规则
  6. 想去游戏公司做游戏,最重要的是什么素养?
  7. SpringCloud 微服务(一)
  8. 错误:类 SubClass 是公共的, 应在名为 SubClass.java 的文件中声明
  9. 常用计算机辅助审计技术,常用的计算机辅助审计技术
  10. 第五章运算符表达式和语句