我想用matlab创建一个十个数一维数组,其中包括4个5,3个4,2个2,1个1。
答案:2 悬赏:70 手机版
解决时间 2021-02-02 11:18
- 提问者网友:火车头
- 2021-02-01 16:01
但是他们的排序是随机的。
最佳答案
- 五星知识达人网友:雾月
- 2021-02-01 17:30
这个简单:
clc;clear all
a=[5 5 5 5 4 4 4 2 2 1]';
aa=a;
b=rand(10,1);
for i=1:10
Nmax=find(b==max(b));
aa(i)=a(Nmax);
b(Nmax)=-1;
end
disp(aa)%这就是你想要的aa
clc;clear all
a=[5 5 5 5 4 4 4 2 2 1]';
aa=a;
b=rand(10,1);
for i=1:10
Nmax=find(b==max(b));
aa(i)=a(Nmax);
b(Nmax)=-1;
end
disp(aa)%这就是你想要的aa
全部回答
- 1楼网友:duile
- 2021-02-01 18:14
matlab中三维数组的生成方式跟二维数组差不多,只不过多了一个参数而已。
下面通过举例来具体说明如何产生及使用三维数组。
a = zeros(2, 2, 3); % 生成一个2*2*3的三维数组
显示出来的结构如下:
a(:, :, 1)= % 一个2*2的二维数组
0 0
0 0
a(:, :, 2)= % 一个2*2的二维数组
0 0
0 0
a(:, :, 3)= % 一个2*2的二维数组
0 0
0 0
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯