Hello All,

Indeed the native sorting mechanisms in AS3 or extremely fast!!!   
Much faster than doing them by hand. Is there a particular reason
why a custom algorithm is being used?

Cheers,
Sam

On Jan 2, 2008, at 3:36 PM, Ralf Bokelberg wrote:

> In the past the native sorting method of Array was rather fast.
> I always assumed, that it is implemented as quicksort anyways.
> Should be standard these days, unless you have special requirements.
> Cheers
> Ralf.
>
> On Jan 2, 2008 3:40 PM, jake varghese <[EMAIL PROTECTED]> wrote:
>> Hi Moveup,
>>
>>
>> AS3 already has a Match function for Strings.  Check it out at
>> http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/ 
>> String.html#match()
>>
>> There is also a method for sorting an Array at
>> http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/ 
>> Array.html#sort()
>> but i dont know if it is a quicksort or one of the many other  
>> algorithms.
>>
>> You can prototype your own quicksort for array with the following  
>> code:
>>
>>     Array.prototype.quicksort = function(Number:left,  
>> Number:right):Array  {
>>         if (right > left){
>>             pIndex = left
>>             newPindex = self.partition(left, right, pIndex)
>>             self.quicksort(list, left, newPindex-1)
>>             self.quicksort(list, newPindex+1, right)
>>         }
>>     };
>>     Array.prototype.swap = function(Number:left, Number:r):Array{
>>         tmp = self[l]
>>         self[l] = self[r]
>>         self[r] = tmp
>>     }
>>     Array.prototype.partition= function(Number:left, Number:right,
>> Number:pindex):Array {
>>         pvalue = self[pindex]
>>         self.swap(pindex, right)
>>         sindex = left
>>         for (i = left; i <= right - 1; i++){
>>             if self[i] <= pvalue{
>>                 self.swap(sindex, i)
>>                 sindex = sindex + 1
>>             }
>>         }
>>
>> You should be able to use the sort like:
>> var Array:arr = new Array("a", "b", "c");
>> arr.quicksort(0, arr, size - 1)
>>
>>
>> You might want to double check that.  I didnt have time to test it.
>>
>>
>> Thanks,
>>
>>
>> Jake Varghese
>> CEO / Lead Developer
>> Flvorful
>> www.flvorful.com
>> office: 877-821-8022 x701
>> cell: 512-289-3916
>>
>>
>>
>> [EMAIL PROTECTED] wrote:
>>> There are several classic C routines that I would love to convert  
>>> for use in As3.
>>> However, not being a C programmer, I am stumbling right now.
>>>
>>> Can anyone offer some help with the following 2 routines???
>>> The first is a method from a classic Regex matching routine and  
>>> the second is a recursive quicksort algorithm
>>>
>>>
>>> /* match: search for regexp anywhere in the text*/
>>> int match(char *regexp, char *text)
>>> {
>>>   if (regexp[0] =='^')
>>>      return matchhere(regexp+1, text);
>>>   do {  /* must look even if string is empty */
>>>         if (matchhere(regexp, text))
>>>           return 1;
>>>     } while (*text++ != '\0');
>>>     return 0;
>>> }
>>>
>>>
>>>
>>>
>>> void quicksort(int L, int u)
>>>     if (L>=u) return;
>>>     swap(L, radint(L, u));
>>>     m=L;
>>>     for (i=L+1;i<=u;i++)
>>>         if (x[i] < x[L])
>>>           swap(++m, i);
>>>   swap(L,m);
>>>   quicksort(L, m-1);
>>>   quicksort(m+1, u);
>>> }
>>>
>>>
>>>
>>>
>>>
>>>
>>> [f] www.flickr.com/photos/bitstream
>>> [c] 416.668.0034
>>> [w] www.bitstream.ca
>>> --------------------------------------------
>>> "...all improvisation is life in search of a style."
>>>              - Bruce Mau,'LifeStyle'
>>>
>>> _______________________________________________
>>> osflash mailing list
>>> [email protected]
>>> http://osflash.org/mailman/listinfo/osflash_osflash.org
>>>
>>>
>>
>> _______________________________________________
>> osflash mailing list
>> [email protected]
>> http://osflash.org/mailman/listinfo/osflash_osflash.org
>>
>
>
>
> -- 
> Ralf Bokelberg <[EMAIL PROTECTED]>
> Flex & Flash Consultant based in Cologne/Germany
>
> _______________________________________________
> osflash mailing list
> [email protected]
> http://osflash.org/mailman/listinfo/osflash_osflash.org


_______________________________________________
osflash mailing list
[email protected]
http://osflash.org/mailman/listinfo/osflash_osflash.org

Reply via email to