Изменить: я написал скрипт в PHP. Я просто заметил, что в нем была вопиющая ошибка, означающая, что наилучшее время исполнения вычислялось некорректно (страшно, что никто не заметил!)
Лучший случай просто превосходит прямое назначение, но худший случай - это намного хуже , чем простое назначение.
Выход:
Код:
& lt;? php $ arr = array (); $ mtime = explode ("", microtime ()); $ starttime = $ mtime [1] + $ mtime [0]; reset_arr ($ обр); for ($ i = 0; $ i & lt; 10000; $ i ++) $ arr [i] = true; $ mtime = explode ("", microtime ()); $ firsttime = $ mtime [1] + $ mtime [0]; $ totaltime = ($ firsttime - $ starttime); echo "присваивание в". $ totaltime. "seconds & lt; br / & gt;"; reset_arr ($ обр); for ($ i = 0; $ i & lt; 10000; $ i ++), если ($ arr [i]) $ arr [i] = true; $ mtime = explode ("", microtime ()); $ secondtime = $ mtime [1] + $ mtime [0]; $ totaltime = ($ secondtime - $ firsttime); echo "худшее сравнение случаев в". $ totaltime. "seconds & lt; br / & gt;"; reset_arr ($ обр); for ($ i = 0; $ i & lt; 10000; $ i ++), если (! $ arr [i]) $ arr [i] = false; $ mtime = explode ("", microtime ()); $ thirdtime = $ mtime [1] + $ mtime [0]; $ totaltime = ($ thirdtime - $ secondtime); эхо "сравнение наилучшего случая в". $ totaltime. "seconds & lt; br / & gt;"; функция reset_arr ($ arr) {for ($ i = 0; $ i & lt; 10000; $ i ++) $ arr [$ i] = false; }
Панель инструментов Query Design доступна только при выполнении следующих действий: