华旭鸿涛爹 2021-11-10 10:00 采纳率: 50%
浏览 12
已结题

matalab中如何将一个数组中第一列中绝对值最大元素的位置换至第一行

matalab中a=[12,-3,3;-18,3,-1;1,1,1]

a =

12    -3     3

-18 3 -1
1 1 1
如何求出第一列中元素绝对值最大的数(-18)的位置并把它放在第一行第一列的位置?

  • 写回答

2条回答 默认 最新

  • 技术专家团-Joel 2021-11-10 10:11
    关注

    你好,代码供参考

    a=[12,-3,3;-18,3,-1;1,1,1];
    [~,pos] = max(abs(a(:,1)));
    a([1,pos],1) = a([pos,1],1) ;
    a
    

    这样a就变成了

    a =
    
       -18    -3     3
        12     3    -1
         1     1     1
    

    PS:
    如果你是要把第一列种绝对值最大的行放到第一行,那么a([1,pos],1) = a([pos,1],1) ;改成即可a([1,pos],:) = a([pos,1],:) ;其他不变

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月16日
  • 已采纳回答 9月8日
  • 创建了问题 11月10日