请问Matlab中怎么把一维数组逆序排列,如将a=[1,2,3,4,5],转成b=[5,4,3,2,1]。有没有一个现成的函数实现呀

多谢。
2024-11-01 03:28:19
推荐回答(5个)
回答1:

用:b=FLIPLR(a);

fliplr左右翻转矩阵

语法:

B=fliplr(A)

将矩阵A的列绕垂直轴进行左右翻转matabc

如果A是一个行向量,fliplr(A)将A中元素的顺序进行翻转。

如果A是一个列向量,fliplr(A)还等于A。

举例说明:

例一:如果A是一个行向量

A=[1 3 5 7 9]

fliplr(A)

ans=[9 7 5 3 1]

例二:如果A是一个列向量

A=[1

3

5

7

9]

fliplr(A)

ans=[1

3

5

7

9]



扩展资料:

【功能简介】实现矩阵左右翻转。

【语法格式】

B=fliplr(A) 

对矩阵A进行左右翻转。

【实例3.47】对矩阵magic(3)进行左右翻转。

>> a=magic(3)  

a =  

8     1     6  

3     5     7  

4     9     2  

>> b=fliplr(a)    %左右翻转  

b =  

6     1     8  

7     5     3  

2     9     4  

【实例分析】左右翻转的过程中,如果矩阵有奇数列,那么中间一列是没有变化的。

参考资料:

百度百科——fliplr

回答2:

matlab中把一维数组逆序排列,可以通过fliplr函数来进行操作。

fliplr,是指对矩阵操作的函数,可以实现矩阵翻转。

将一维数组逆序排列步骤(如a=[1,2,3,4,5]转成b=[5,4,3,2,1]):

1、双击打开matlab应用程序。

2、在matlab界面中的“命令行窗口”中输入命令。

3、根据红色区域位置,在“命令行窗口”输入“a=[1,2,3,4,5]”。

4、通过函数fliplr求矩阵逆序排列,在“命令行窗口”输入“b=fliplr(a)”,按下回车键。可求得矩阵逆序排列b=[5,4,3,2,1]。

回答3:

用:b=FLIPLR(a);

fliplr左右翻转矩阵

语法:

B=fliplr(A)

将矩阵A的列绕垂直轴进行左右翻转matabc

如果A是一个行向量,fliplr(A)将A中元素的顺序进行翻转。

如果A是一个列向量,fliplr(A)还等于A。

扩展资料:

matlab中提供了许多对矩阵操作的函数,可以实现矩阵的三角矩阵的提取(triu、tril)、矩阵的翻转(flipud、fliplr、Flipdim)和旋转(rot90)等各种操作。

应用举例

>> a=dec2bin(8)%将8变为二进制

a =

1000

>> fliplr(a)%对二进制进行翻转,从1000变为0001

ans =

0001

参考资料来源:百度百科-fliplr

回答4:

没有这种函数吧,自己编一个函数,加入库不就可以了
这个很简单啊
Function (B)=PAIXU(A)
;j=1;
n=length(A);
for j=1:n
B(n-j+1)=A(j);
end
没仔细弄你在改改,应该可以的

回答5:

FLIPLR(a);
你可以在matlab中输入help FLIPLR具体看一看!