1 עבור i מ 0 עד 9... 1.1 הגרל מספר ל n 1.2 עבור j מ 0 עד i-1.. 1.2.1 אם ערכו של התא במקום j שווה ל n.. 1.2.1.1 חסר 1 מ i. 1.2.1.2 חזור ל קטע 1 עבור i נוכחי. 1.3 התא במקום i מקבל n.
i = 1 j = 1 While i <= 10 If arr(j) = 0 Then rndplc = Int(Rnd * 10) + 1 tmp = arr(rndplc) arr(rndplc) = i If j <> rndplc Then arr(j) = tmp i = i + 1 Else j = j + 1 End If Wend
אני לא בטוח אם מישו כתב את זה אבל חפיף זה הפתרון של ב-VB זה ס"ג 2n אבל יש מצב שירוץ פחות מ-2n פעמים