Matlab编程的一点想法

我这菜鸟在大二上学期就学习了Matlab的课程,并且还顺带了10多个上机课时。大三、大四期间的信号与系统以及通信原理的实验也都是由Matlab完成的。研一的小论文的仿真也是用Matlab完成的,按理说到目前为止算是有四年Matlab编程经验了吧,课时结果直到今天我才明白了点Matlab这个所谓的“第四代”编程语言的真正特殊之处。尴尬

原来我以为之所以称之为“第四代”编程语言是因为在他的语法里有“变量无需预定义直接使用”、“下标从一开始”等等特别“人性化”的东西,后来发现这还不是它的根本优势所在(也许这次我又体会错了...)。

之前用Matlab写程序完全是延续了java等编程语言的风格,大量的使用了for循环等各种控制结构。哪怕是为了在一个比较大的矩阵里找到零元素我都会去双重循环来遍历这个矩阵,而不是去使用Matlab本身所带有的定位零元素的函数。正是因为大量的使用了java等语言的编程风格,而忽视了Matlab本身强大的矩阵处理功能,使得我写的一些仿真程序运行速度慢的有点让人难以忍受(在验证推荐系统的性能改进的算法时,为了得到一个特别大的矩阵我甚至是一个元素一个元素计算得到的,而不是通过矩阵计算得到的,完全把这个矩阵当成二维数组来用了,完全背离了Matlab的设计宗旨,真是大错特错)

现在回想一下,即使是接触Matlab有四年时间了,但是一直都没入门,真是因为平时仅仅满足于实现功能就好了,没有去仔细的琢磨语言本身的一些特性。这也许是我在学习其他的一些东西时,也会碰到的,木头是该多动动脑子了。。。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值