楼主: 挣扎的小白
3838 7

[问答] matlab运行时间过长 [推广有奖]

  • 0关注
  • 0粉丝

初中生

42%

还不是VIP/贵宾

-

威望
0
论坛币
20 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
68 点
帖子
13
精华
0
在线时间
8 小时
注册时间
2019-8-21
最后登录
2020-4-21

楼主
挣扎的小白 发表于 2019-8-25 10:07:47 来自手机 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
用matlab里的distance公示计算1500家公司互相的距离,已经运行200+小时了,还没有算完要哭了,求大神指点
1566698867693113.jpeg
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:MATLAB matla atlab 运行时间 Lab

沙发
Whig 在职认证  发表于 2019-8-25 12:45:58 来自手机
挣扎的小白 发表于 2019-8-25 10:07
用matlab里的distance公示计算1500家公司互相的距离,已经运行200+小时了,还没有算完要哭了,求大神指点
你预先创建矩阵B试试,所有元素取0

藤椅
hzcmaster 发表于 2019-8-25 15:23:31
你这个distance函数应该不是很复杂,时间长的原因可能是1,矩阵没有事先赋值;2,for循环里面的赋值语句没加分号导致你不断输出结果,这对运行时间也是一个负担,我建议你加一个分号,观察一下i=1时的运行时间

板凳
挣扎的小白 发表于 2019-8-25 23:06:34 来自手机
hzcmaster 发表于 2019-8-25 15:23
你这个distance函数应该不是很复杂,时间长的原因可能是1,矩阵没有事先赋值;2,for循环里面的赋值语句没加 ...
在i=1:1438后加分号吗?

报纸
hzcmaster 发表于 2019-8-26 13:30:31
挣扎的小白 发表于 2019-8-25 23:06
在i=1:1438后加分号吗?
B(i,j)=distance(..........);

地板
lindsay345 发表于 2019-8-26 21:56:20
hzcmaster 发表于 2019-8-26 13:30
B(i,j)=distance(..........);
先取定i=1,再计算j的循环。就是只算内循环,看看多少时间。

7
挣扎的小白 发表于 2019-8-28 10:55:21 来自手机
hzcmaster 发表于 2019-8-26 13:30
B(i,j)=distance(..........);
万分感谢!!!!问题已经解决了,2分钟就跑出来了,都要哭了

8
挣扎的小白 发表于 2019-8-28 10:56:18 来自手机
Whig 发表于 2019-8-25 12:45
你预先创建矩阵B试试,所有元素取0
谢谢,问题解决了,需要加分号,提前生成B影响不大,还是很感谢!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-20 13:15