
Debug
Yunhe_Feng
这个作者很懒,什么都没留下…
展开
-
调试程序心得-1
多总结,多思考,多沟通是一种很好的工作方式。很多事情看似简单和随意,但将这些事情书写出来和在脑子里打转,对以后工作的effect factor是有很大差别的。于是,写下今天调试代码的心得。调试的过程就是从现象追溯会源头的过程。关于现象的观察,可以使用强大的debug工具,也可以使用最原始的方法——打印出错信息。很多事情,我都是使用后一种。关于现象的观察,粒度有粗有细。比如,今天我调试一原创 2015-08-06 09:51:53 · 3556 阅读 · 0 评论 -
查阅参考资料的技巧
最近在使用EM算法处理mixtures相关问题,遇到了一个已知component密度分布函数,求其权重的问题。在一篇paper中,作者很简洁地给出了相关方法,但是没有详细的算法描述。之所以没有花费笔墨描述该算法,源于此算法比较简单,不便赘述。为了找到此算法的具体描述,浪费了很多时间,皆因问题定位不清,精确搜索资料的效率低下。为提高今后查阅资料的效率,减少解决问题的时间,在此记下。首先,原创 2015-09-22 11:46:32 · 826 阅读 · 0 评论 -
调试程序心得-2(提高程序执行效率)
最近在调试一个EM算法(由matlab实现),发现其执行效率非常低下。使用toc和tic命令找到了一段代码的执行时间占据了整个算法执行时间的90%左右。我首先想到的是这是由matlab算法实现for loop非常低效造成的,于是搜索了些提高matlab程序执行的效率的tips,比如prefer local function over nested function, vectorize, prea原创 2016-02-15 05:19:24 · 1928 阅读 · 0 评论 -
C++ 静态数组过大,栈溢出
使用C++定义静态数组时,如果数组过大,会导致栈溢出。例如,如下代码能够正常运行:int main (){ int len = 2895; bool pd[len][len]; for (int i = 0; i < len; i++) for (int j = 0; j < len; j++) pd[i][j] = true; return 0;}如下代码原创 2016-03-07 06:41:11 · 8884 阅读 · 0 评论 -
[Solved] fatal error: mpc.h: No such file or directory Ubuntu
sudo apt-get install libmpc-devThis error was caused by the lack of multiple precision complex floating-point library development package (libmpc-dev).原创 2016-07-06 10:29:10 · 15699 阅读 · 1 评论 -
[A Weird Bug] caused by the name of Python script
I attempt to run a Python LDA module after 'pip install lda'. But there always occurs a weird bug: lda.py line 3 -- "no module named datasets". First, I thought the package of LDA are not installed co原创 2016-10-22 00:01:47 · 391 阅读 · 0 评论 -
Tips for writing efficient Python code
Find the difference of keys between two dictionariesSuppose two dictionaries A and B. We would like to find the keys in A but not in B.Bad example:import timeA = {}B = {}for i in range(1000):原创 2016-10-22 07:59:38 · 474 阅读 · 0 评论