是否可以使用C的本机实用程序来改进此顺序搜索算法(取自 编程实践)的性能,例如,如果我将i变量设置为寄存器变量?
int lookup(char *word, char*array[]) { int i for (i = 0; array[i] != NULL; i++) if (strcmp(word, array[i]) == 0) return i; return -1; }
Grey Panther.. 24
是的,但只是非常轻微.通过使用更好的算法可以实现更大的性能提升(例如,保持列表排序并进行二分查找).
一般来说,优化给定的算法只能让你到目前为止.选择更好的算法(即使它没有完全优化)可以为您提供相当大的(数量级)性能改进.
是的,但只是非常轻微.通过使用更好的算法可以实现更大的性能提升(例如,保持列表排序并进行二分查找).
一般来说,优化给定的算法只能让你到目前为止.选择更好的算法(即使它没有完全优化)可以为您提供相当大的(数量级)性能改进.