请教:数据结构,如何测试算法的好坏?

解决每个问题都有不同的实现算法,那怎么来测试每个算法的好坏?看执行时间吗?怎么看?请大虾指教!!感激不尽!!
如有详细举例会追加分数的!
能不能举个具体的实例来说明,比如解决一个问题算法有好几种,然后怎么分析每个算法的好坏?

一般算法的好坏标准有以下:
1、准确性,首先必须保证算法得出的结果准确,这里的准确性并不是代表一定要得到某个值。例如在进化算法中,得出的非支配解集就存在一定的随机性,可以通过建立数学方法去讨论解的好坏。
2、时间复杂度和空间复杂度,现在对于空间复杂度讨论较少,都是时间复杂度的讨论。
3、算法的健壮性,有的算法是为了某一个具体的实例而建立的,但是有的算法就有通用性。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-03
主要是看时间复杂度的数量级 然后就是空间代价了
第2个回答  2010-11-06
第一当然是准确性
第二是时间复杂度,即对于相同大小的数据,运行时间越少的算法越好
第三是空间复杂度,即对于相同大小的数据,用越少内存的算法越好

算法好坏的主要矛盾即时空复杂度,由于近年来计算机硬件的发展,可利用的内存越来越多,所以时间复杂度的重要性有强于空间复杂度的趋势
相似回答