1. 程式人生 > >數組常用工具

數組常用工具

如果 一個 個數 arr func 是否 == [ ] con

//把一個數組傳入函數內,返回一個新的數組,這個數組保存的是第一個數組中每一個元素重復的次數。
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]

數組常用工具