排序算法二(选择排序)

      选择排序的核心是将第n个数,和第n个后面的数据进行对比,也就是和第(n+1,n+2...,arr.length)个数进行对比,
找到小的那个,更换位置,这样下去就可以找到最小的那个。
      选择排序用到了两遍的for循环,第一次for循环的目的是找到对比的数据,第二次for循环的目的是找到需要对比的
数据,以往复的循环,排出来想要的顺序。(今天就不在prototype上面写了)

       举个栗子:
       五个元素: E   A   D   H  B(按字母的顺序排序)

      第一次对比:  将 (数据的第一个位置的数) E 和(第一个后面的数据)   A   D   H   B进行对比 
      
                             执行结果是    A   E  D  H  B
                             
      第二次对比:  将 (数据的第二个位置的数) E  和(第二个后面的数) D  H  B 进行对比,第二个之前 的位置不改变  
        
                             执行结果是   A   B   D   H   E
                             
      第三次对比:  将(数据的第三个位置的数) D 和(第三个后面的数) H E进行对比,第三个之前的数据位置不改变
      
                            执行结果是    A   B   D   H   E
                            
      第四次对比:  将(数据的第四个位置的数)H 和 (第三个后面的数)E进行对比,第四个之前的数据位置不改变
      
                              执行结果是    A   B   D   E   H

     有必要说一下,网上好多小伙伴都把选择排序,插入排序,冒泡排序搞不清楚,网上的博客很多,有些里面也有不正确的,需要深入理解
,明辨是非。在接下来的几天里,我会持续更新博客,探讨这些排序的核心思路。还是不是很清楚的同学要深入理解这些排序可以去买书看看。

        不说了,上图叭:

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值