声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1248|回复: 4

[求助]matlab的矩阵计算

[复制链接]
发表于 2006-5-9 18:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
各位大大<BR>遇到难题<BR>从一个以知矩阵从上往下求得其每行的最小值,而且这些最小值不能在同一列里<BR>最后把这个最小矩阵,除了最小值以外其他的数值都以0代替<BR>求这个方法的大概程序<BR>                                                                                      头痛的小弟拜上
回复
分享到:

使用道具 举报

发表于 2006-5-9 21:34 | 显示全部楼层

回复:(leaxp)[求助]matlab的矩阵计算

“最小值不能在同一列里”<br>那如果给你的矩阵偏偏在一列里,你用什么规则来处理?<br><br>这个问题条件不足,先把条件给充分把
[此贴子已经被作者于2006-5-9 21:34:38编辑过]

 楼主| 发表于 2006-5-10 12:53 | 显示全部楼层
<P>是一个n*n的上下三角对称的矩阵<BR>求矩阵第一行的最小值<BR>然后考虑除这最小值一列以外的矩阵<BR>依旧在第一行选取除这个最小值以外的任意一个值,求出这个值所在列的最小值<BR>重复上面的步骤,直到第1行所有值都被选择过<BR>由于是上下三角对称的矩阵,所以,对于已经选择的对称的最小值,不能再选<BR>最后把矩阵表示出来,还是n*n矩阵,选择到的最小值保留,其余都是0<BR>举个例子<BR>[20 40 30 10<BR> 40 15 13 20<BR> 30 13 50 25<BR> 10 20 25 60]<BR>第1步骤选出第1行的10<BR>然后随机选择第1行的其他数<BR>假设是选择第3列的30,第3列选择13<BR>再后假设选择第2列的40,则在第2列只能选15.因为13是已经被选择过的对称数<BR>最后则是选第2列的20,在4个数中应为10是被选择过的对称数,所以最小是20<BR>最后输出[20 0  0  10<BR>         0  15 13 0<BR>         0  0  0  0<BR>         0  0  0  0]<BR>之前表达不详细还有误<BR>望海涵<BR>                                                         头痛小弟再拜上<BR><BR><BR><BR></P>
发表于 2006-5-10 17:07 | 显示全部楼层

回复:(leaxp)[求助]matlab的矩阵计算

这个用[C I]=min()加一个循环就能实现啊<BR>先取第一行最小值,会返回最小值所在位置I<BR>然后剔除第i列,继续算第2行,一次类推
 楼主| 发表于 2006-5-10 19:06 | 显示全部楼层
<P>呃,我是新手.正在研究楼上的方案中...<BR>谢谢楼上的答复.</P>
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-20 15:38 , Processed in 0.072626 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表