OsListSortInPlace
From OpenSimulator
Line 13: | Line 13: | ||
- if there are different object types (ie some are integer, others string, etc) at the consider indexes [n * stride], each type is considered as a sub list and each list is sorted.<br> | - if there are different object types (ie some are integer, others string, etc) at the consider indexes [n * stride], each type is considered as a sub list and each list is sorted.<br> | ||
[1,"D",-4,"A","B"] will be [-4,"A",1,"B","D"], in ascending sort and stride 1.<br> | [1,"D",-4,"A","B"] will be [-4,"A",1,"B","D"], in ascending sort and stride 1.<br> | ||
− | - Lists with stride 1 and elements all of | + | - Lists with stride 1 and elements all of same type are a lot faster to sort than others, because in that case faster algorithms can be used.<br> |
|ossl_example=<source lang="lsl"> | |ossl_example=<source lang="lsl"> |
Revision as of 17:15, 1 June 2021
osListSortInPlace(list src, integer stride, integer ascending)
| |
Identical to llListSort but does the sort on the original list, so using less memory.
- Does nothing if the list length is not a multiple of stride. | |
Threat Level | This function does not do a threat level check |
Permissions | Use of this function is always allowed by default |
Extra Delay | 0 seconds |
Example(s) | |
// default { state_entry() { llSay(0, "osListSortInPlace example"); list src = [1,"D",-4,"A","B"]; llSay(0, "original list: " + llDumpList2String(src,",")); osListSortInPlace(src, 1, TRUE); llSay(0, "sorted in ascending order with stride 1: " + llDumpList2String(src,",")); } } | |
Notes | |
This function was added in 0.9.2 |