冒泡排序和选择排序的方法

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      ///index是判断数组里面是否有一个值,如果有返回角标,如果没有就返回-1;
      //思路:就是判断角标我数值和角标

      function indexof(arr, n) {
        // for(i=0;i<n;i++){
        //  var num=[];//这两行是定义产生的数字可以装到数组里面去
        // num[i]=i
        // }
        //  num[i]=i;
        for (i = 0; i < arr.length; i++) {
          arr[arr.length] = n;
        }
        return arr;
        // console.log(num)//这句是产生的数组
        // return ;
      }
      console.log(indexof([1, 2, 3, 4, 5], 6));

      function indexof(arr, n) {
        var index = -1; //假设没有这个数值,则返回角标是-1;
        for (i = 0; i < arr.length; i++) {
          //思路是找数组里面的角标,如果角标和找到的数字的值相等,则返回这个角标
          if (n == arr[i]) {
            index = i;
            break;
          }
        }
        return index;
      }
      console.log(indexof([6, 7, 8, 9, 10], 5));
    </script>

    <script>
      var arr = [6, 9, 8, 7]; //定义一个数组,我要输出的结果;是数组里面的数据要从小到大排列冒泡的核心是第一个数字和第二个数字比较
      // 思路:需要做的事情,是每一个数字进行比较,一直比较到最后一个数字,这样的一个循环过程是数组的长度作为判断条件;
      for (i = 0; i < arr.length; i++) {
        for (j = 0; j < arr.length; j++) {
          if (arr[j] > arr[j + 1]) {
            var t;
            t = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = t;
          }
        }
      }
      console.log(arr);
    </script>

    <script>
      var arr = [9, 5, 8, 7];
      for (var i = 0; i < arr.length - 1; i++) {
        for (var a = i + 1; a < arr.length; a++) {
          if (arr[i] > arr[a]) {
            var num = arr[i];
            arr[i] = arr[a];
            arr[a] = num;
          }
        }
      }
      console.log(arr);
    </script>

    <script>
      var arr = [6, 9, 8, 5];
      for (i = 0; i < arr.length - 1; i++) {
        var min = i; //假设最小值等于第一个位置上面的数
        for (a = i + 1; a < arr.length; a++) {
          if (arr[min] > arr[a]) {
            min = a;
          }
        }
        if (min != i) {
          var t = arr[min];
          arr[min] = arr[i];
          arr[i] = t;
        }
      }
      console.log(arr);
    </script>
  </body>
</html>
posted @   干饭吧  阅读(53)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示