Просмотр кода страницы Модуль:Exponential search
Материал из Saltyverse Wiki
У вас нет прав на выполнение действия «редактирование этой страницы» по следующей причине:
Вы можете просмотреть и скопировать исходный код этой страницы.
-- This module provides a generic exponential search algorithm.
require[[strict]]
local checkType = require('libraryUtil').checkType
local floor = math.floor
local function midPoint(lower, upper)
return floor(lower + (upper - lower) / 2)
end
local function search(testFunc, i, lower, upper)
if testFunc(i) then
if i + 1 == upper then
return i
end
lower = i
if upper then
i = midPoint(lower, upper)
else
i = i * 2
end
return search(testFunc, i, lower, upper)
000
1:0
Шаблон, используемый на этой странице:
Возврат к странице Модуль:Exponential search.