zoukankan      html  css  js  c++  java
  • matlab sort函数

    一起来学演化计算-matlab sort函数

    觉得有用的话,欢迎一起讨论相互学习~

    我的微博我的github我的B站

    sort

    • 对数组元素排序

    语法

    • B = sort(A) 按照大小不等于1的第一个数组维度对A的元素按升序排序
      • 如果A是一个向量,那么sort(A)对向量元素进行排序
      • 如果A是一个矩阵,那么sort(A)将A的列作为向量,并对每一列进行排序
      • 如果A是一个多维数组,那么sort(A)沿着大小不等于1的第一个数组维度操作,将元素视为向量。
    • B = sort(A,dim)
      • 返回沿维度dim的已排序元素。例如,如果A是一个矩阵,那么sort(A,2)对每一行中的元素进行排序
    • B = sort( ___ ,direction) 返回使用前面任何语法按方向指定的顺序排序的元素。单字符串“ascend”表示升序(默认情况下),“descent”表示降序。
    • [B,I] = sort( ___ ) 返回以前任何语法的索引向量集合。I的大小与A相同,描述了A的元素沿排序维数排列成B的情况。例如,如果A是一个数值向量,B = A(I)。即 返回排序后元素的索引

    示例

    按升序排列向量

    • 创建一个行向量,并按升序对其元素排序
    A = [9 0 -7 5 3 8 -10 4 2];
    B = sort ()
    B =
    -10 7 0 2 3 4 5 8 9
    

    对矩阵中的行做升序排列

    A = [3 6 5; 7 -2 4; 1 0 -9]
    A =
    
         3     6     5
         7    -2     4
         1     0    -9
    
    B = sort(A,2)
    B =
    
         3     5     6
        -2     4     7
        -9     0     1
    

    对矩阵中的列按降序排列

    A = [10 -12 4 8; 6 -9 8 0; 2 3 11 -2; 1 1 9 3]
    A =
    
        10   -12     4     8
         6    -9     8     0
         2     3    11    -2
         1     1     9     3
    
    B = sort(A,'descend')
    B =
    
        10     3    11     8
         6     1     9     3
         2    -9     8     0
         1   -12     4    -2
    

    排序并索引日期数组

    创建一个datetime值数组,按升序排序,即从最早的日历日期到最近的日历日期

    ds = {'2012-12-22';'2063-04-05';'1992-01-12'};
    A = datetime(ds,'Format','yyyy-MM-dd')
    A =
    
       2012-12-22
       2063-04-05
       1992-01-12
    
    [B,I] = sort(A)
    B =
    
       1992-01-12
       2012-12-22
       2063-04-05
    
    
    I =
    
         3
         1
         2
    
    B列出了排序后的日期,I包含了A对应的索引。使用索引数组I直接访问原始数组中已排序的元素
    
    A(I)
    ans =
    
       1992-01-12
       2012-12-22
       2063-04-05
    
    

    3-D数组排序

    创建一个2×2×2的数组,并沿着第三维按升序排列其元素

    A(:,:,1) = [2 3; 1 6];
    A(:,:,2) = [-1 9; 0 12];
    A
    A(:,:,1) =
    
         2     3
         1     6
    
    
    A(:,:,2) =
    
        -1     9
         0    12
    
    B = sort(A,3)
    B(:,:,1) =
    
        -1     3
         0     6
    
    
    B(:,:,2) =
    
         2     9
         1    12
    
    % 使用A(:),表示对A的所有元素进行排序
    
    B = sort(A(:))
    B =
    
        -1
         0
         1
         2
         3
         6
         9
        12
    

    输入参数

    输出参数

  • 相关阅读:
    保持URL不变和数字验证
    centOS ftp key?
    本地环境测试二级域名
    linux 解决You don't have permission to access 问题
    php smarty section loop
    php header Cannot modify header information headers already sent by ... 解决办法
    linux部分命令
    Linux 里面的文件操作权限说明
    用IT网络和安全专业人士视角来裁剪云的定义
    SQL Server 2008 R2炫酷报表"智"作有方
  • 原文地址:https://www.cnblogs.com/cloud-ken/p/11259385.html
Copyright © 2011-2022 走看看