zoukankan      html  css  js  c++  java
  • 数组常用工具

    //把一个数组传入函数内,返回一个新的数组,这个数组保存的是第一个数组中每一个元素重复的次数。
                 function fa ( arr ) {
                        var num;
                        var arra = [ ];
                        for ( var  i = 0; i < arr.length; i++ ) {
                                 num = 0;
                                 for ( var  j = 0; j < arr.length; j++ ) {
                                               if ( arr [ j ] == arr [ i ] ) {
                                                          num++
                                               };
                                 };
                                 arra.push ( num );
                       };
                       console.log ( arra );
               };
               var a = [ 1, 2, 3, 3, 2, 1, 3, -2, -2, 1];
               fa ( a );  //[ 3, 2, 3, 3, 2, 3, 3, 2, 2, 3]



    //把一个数组传入函数内,返回一个新的数组,这个数组保存的是第一个数组中的元素是否重复。
               function fb ( arr ) {
                        var num;
                        var arra = [ ];
                        for ( var  i = 0; i < arr.length; i++ ) {
                               num = 0;
                               for ( var  j = 0; j < arr.length; j++ ) {
                                           if ( arr [ j ] == arr [ i ] ) {
                                                     num++
                                           };
                               };
                               if ( num > 1 ) {
                                      arra.push ( "重复" )
                               } else {
                                     arra.push ( "不重复" )
                                 };
                       };
                       console.log ( arra );
              };
              var  b = [ 1, 2, 3, 4, 5, 3, 1];
              fb ( b );// ["重复", "不重复", "重复", "不重复", "不重复", "重复", "重复"]


    //判断一个数组中是否有某个元素,如果有,它出现了几次。
               function fc ( n, arr ) {
                        var num = 0;
                        for ( var  i = 0; i < arr.length; i++ ) {
                                    if ( arr [ i ] == n ) {
                                            num++
                                    };
                        }; 
                        if ( num > 0 ) {
                        console.log ( "有这个元素,它出现了" + num + "次" )
                       } else {
                               console.log ( "没有这个元素" )
                         };
               }; 
               var c = [ 0, 1, 2, 3, 4, 5, 2, 5, 1, 2, 3];
               fc ( 2, c );//有这个元素,它出现了3次


    //求一个数组中的最大值。
               function fd ( arr ) {
                        var num = arr [ 0 ];
                        for ( var  i = 1; i < arr.length; i++ ) {
                                   if ( num < arr [ i ] ) {
                                             num  = num ^ arr [ i ];
                                             arr [ i ] = num ^ arr [ i ];
                                             num  = num ^ arr [ i ];
                                   };
                          };
                          console.log ( num );
               };
               var d=[0,1,33,32,16,12,8,4];
               fd ( d );//33


    //把一个数组按照从小到大的顺序排列。
               function fe ( arr ) {
                        for ( var  i = 0; i < arr.length - 1; i++) {
                                     for ( var  j = i + 1; j < arr.length; j++) {
                                              if ( arr [ i ] > arr [ j ] ) {
                                                        arr [ i ] = arr [ i ] ^ arr [ j ];
                                                        arr [ j ] = arr [ i ] ^ arr [ j ];
                                                        arr [ i ] = arr [ i ] ^ arr [ j ];
                                              };
                                      };
                         };
                         console.log ( arr );
               };
               var e = [ 12, 1, 17, 15, 28, 23, 26, -10, 0];
               fe ( e );//[-10,0,1,12,15,17,23,26,28]

    //随机选取数组内的三个参数。

              var arr = [ "元素1", "元素2", "元素3", "元素4", "元素5"]
              function fn( ){
                    var n1 = parseInt ( Math.random ( ) * 5 );
                    var n2 = parseInt ( Math.random ( ) * 5 );
                    var n3 = parseInt ( Math.random ( ) * 5 );
                    if ( n1 == n2 | | n1 == n3 | | n2 == n3 ) { return fn ( )}
                    else { return [ n1, n2, n3];}
              };
              var num = fn ( );
              console.log ( arr [ num [ 0 ] ], arr [ num [ 1 ] ], arr [ num [ 2 ] ]);

    你好!如果你有什么更好的建议或意见,请在评论区留言。感谢你的阅读!
  • 相关阅读:
    安装AD域时,出现NetBIOS名称冲突?
    SharePoint Server 2010 安装图解
    Visual C++ 2011519
    Visual C++ 2011520
    Visual C++ 2011518
    Visual C++ 2011520
    设计模式创建型 C++版本
    线程条件变量,一次性初始化
    Visual C++ 2011526
    Visual C++ 2011512
  • 原文地址:https://www.cnblogs.com/YCxiaoyang/p/7203225.html
Copyright © 2011-2022 走看看