二维数组排序

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> /* * write by : 惠万鹏  */
var  DouSel  =  
{
    
/* *
    *对二维数组进行排序
    *arr      :将要排序的数组
    *dimIndex :按第几维排序,可选值0或1
    *ascOrDexc:按升序或降序,可先值为0或1
    *返回一个已经排好序的数组
    
*/
    __sortDyadicArray : 
function  (arr, dimIndex, ascOrDesc)
    {
      
var  tempArr  =   null ;
      
/* * 使用选择排序法排序 */
      
for ( var  m  =   0 ; m  <  arr.length - 1 ; m ++ )
      {
        
var  index  =  m;
        
for ( var  n  =  m  +   1 ; n  <  arr.length; n ++ ){
          
/* * 按第一维升序排序  */
          
if (dimIndex  ==   0   &&  ascOrDesc  ==   0  
            
&&  arr[n][ 0 <  arr[index][ 0 ])
          {
            index 
=  n;
          }
          
/* * 按第一维降序排列  */
          
else   if (dimIndex  ==   0   &&  ascOrDesc  ==   1  
            
&&  arr[n][ 0 >  arr[index][ 0 ])
          {
            index 
=  n;
          }
          
/* * 按第二维升序排序  */
          
else   if (dimIndex  ==   1   &&  ascOrDesc  ==   0  
            
&&  arr[n][ 1 <  arr[index][ 1 ])
          {
            index 
=  n;
          }
          
/* * 按第二维降序排列  */
          
else   if (dimIndex  ==   1   &&  ascOrDesc  ==   1  
            
&&  arr[n][ 1 >  arr[index][ 1 ])
          {
            index 
=  n;
          }
        }
        tempArr 
=     arr[m];
        arr[m] 
=      arr[index];
        arr[index] 
=  tempArr;
      }
      
return  arr;
    }
}

你可能感兴趣的:(二维数组)