note 67274 added to function.shuffle
| From: | bsl04uarkedu at osu1 dot php dot net | Date: | Tue, 06 Jun 2006 20:41:49 +0000 |
| Subject: | note 67274 added to function.shuffle | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-113374@lists.php.net to get a copy of this message | ||
I spoke too soon. Other readers spotted than Benton's code was a little wrong. What a mess this
thread is.
This stuff isn't PHP, but I believe it correctly implements Fisher-Yates. random(a, b) returns
a number n such that a <= n <= b. The arrays start at 0. Hopefully this is enough to help
someone who's trying to implement FY (in whatever language).
i = data_length;
if (i == 0) return;
while (i--)
{
r = random(0, i);
tmp = data[i];
data[i] = data[r];
data[r] = tmp;
}
----
Server IP: 64.71.164.2
Probable Submitter: 130.184.185.105
----
X-Spam-Status: No, hits=3.1 required=5.0 tests=DATE_MISSING,FROM_NO_LOWER
autolearn=no version=2.64
----
Manual Page -- http://www.php.net/manual/en/function.shuffle.php
Edit -- http://master.php.net/note/edit/67274
Del: integrated -- http://master.php.net/note/delete/67274/integrated
Del: useless -- http://master.php.net/note/delete/67274/useless
Del: bad code -- http://master.php.net/note/delete/67274/bad+code
Del: spam -- http://master.php.net/note/delete/67274/spam
Del: non-english -- http://master.php.net/note/delete/67274/non-english
Del: in docs -- http://master.php.net/note/delete/67274/in+docs
Del: other reasons-- http://master.php.net/note/delete/67274
Reject -- http://master.php.net/note/reject/67274
Search -- http://master.php.net/manage/user-notes.php