ثامر أبو بلقيس
04-09-2014, 10:00 PM
بسم الله الرحمن الرحيم
قرأت هاته الخوارزمية - و هي خوارزمية المشط - و المتعلقة بالترتيب
أعجبتني كثيرا كونها أقوى من خوارزمية الفقاعات
فأحببت كتابتها قد يستفاد منها يوما
في global functions نزرع :
function combsort(t)
local gapd, gap, swaps = 1.2473, #t, 0
while gap + swaps > 1 do
local k = 0
swaps = 0
if gap > 1 then gap = math.floor(gap / gapd) end
for k = 1, #t - gap do
if t[k] > t[k + gap] then
t[k], t[k + gap], swaps = t[k + gap], t[k], swaps + 1
end
end
end
return t
end
و لاستغلال الكود نضع في الزر :
list = { 4, 2, 5, 7, 1, 12, 6, 8, 11, 9, 10, 3}
combsort(list)
p ="";
for i, j in pairs(list) do
p=p..j..","
end
result = Dialog.Message("Notice", p);
ونعاين كيف سيتم ترتيب عناصر المجموعة
سلام :abc_138:
قرأت هاته الخوارزمية - و هي خوارزمية المشط - و المتعلقة بالترتيب
أعجبتني كثيرا كونها أقوى من خوارزمية الفقاعات
فأحببت كتابتها قد يستفاد منها يوما
في global functions نزرع :
function combsort(t)
local gapd, gap, swaps = 1.2473, #t, 0
while gap + swaps > 1 do
local k = 0
swaps = 0
if gap > 1 then gap = math.floor(gap / gapd) end
for k = 1, #t - gap do
if t[k] > t[k + gap] then
t[k], t[k + gap], swaps = t[k + gap], t[k], swaps + 1
end
end
end
return t
end
و لاستغلال الكود نضع في الزر :
list = { 4, 2, 5, 7, 1, 12, 6, 8, 11, 9, 10, 3}
combsort(list)
p ="";
for i, j in pairs(list) do
p=p..j..","
end
result = Dialog.Message("Notice", p);
ونعاين كيف سيتم ترتيب عناصر المجموعة
سلام :abc_138: