[Gambas-user] A random sort of listview

jbskaggs jbskaggs at ...1871...
Sun Apr 12 20:31:54 CEST 2009


This works much better at getting a more shuffled list!

Thanks



Doriano Blengino wrote:
> 
> jbskaggs ha scritto:
>>
>>>> FOR i = 0 TO ListView1.count - 1 STEP 1
>>>>  myArray[i] = i 
>>>> NEXT 
>>>>
>>>> FOR i = ListView1.count - 1 TO 0 STEP -1
>>>> a = Int(Rnd(i + 1))
>>>> SWAP myArray[i], myArray[a]
>>>> PRINT i, a
>>>> NEXT 
>>>>       
> Apart from the problem of missing records, there could be also a 
> "randomness" problem in the algorithm... I am really not sure, but it 
> seems that certain slots have more chances to be swapped than other - 
> myarray[0] can be swapped COUNT times, while myarray[count-1] gets only 
> a chance.  I am not sure of what this signifies: it is true that the 
> swap affects the values contained in slots, and not the slots 
> themselves, but anyway there could be another method. One could also do 
> this:
> 
>     for i = 0 to 1000   ' arbitrary value, large enough (>100?)
>       c1 = int(rnd(listview1.count))
>       c2 = int(rnd(listview1.count))
>       swap myarray[c1], myarray[c2]
>     next
> 
> This way, every slot gets the same chances to be swapped; for sufficient 
> loops, it should make a good job... perhaps more random than before.
> And perhaps, as the algorthm is different, it could solve the problem of 
> missing records (which I didn't understand...).
> 
> Cheers,
> 
> -- 
> Doriano Blengino
> 
> "Listen twice before you speak.
> This is why we have two ears, but only one mouth."
> 
> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> High Quality Requirements in a Collaborative Environment.
> Download a free trial of Rational Requirements Composer Now!
> http://p.sf.net/sfu/www-ibm-com
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
> 
> 

-- 
View this message in context: http://www.nabble.com/A-random-sort-of-listview-tp22919766p23013584.html
Sent from the gambas-user mailing list archive at Nabble.com.





More information about the User mailing list