天天看點

《算法技術手冊》一2.4.1 常數級算法的性能

在分析算法性能時,本書常常會強調原生操作都具有常數級的性能。很明顯,這個聲明并不能完全準确地描述實際操作的性能,因為它沒有考慮到硬體問題。例如,比較兩個32 位的數x和y的大小,這個操作耗費的時間與x、y的大小無關。常數級的操作被認為具有O(1)的性能。

那麼在比較兩個256 位的數字時,性能又如何呢?比較兩個1024位的數字又如何呢?我們認為,在長度k固定的前提下,比較兩個k位數字的操作可以在常數時間内完成。這麼認為的前提是問題的規模(即x、y的值)不得超過k。由k的倍增所導緻的額外費用也被認為是O(1)的性能。

繼續閱讀