Difference between revisions of "LlListSort/fr"
Gally Young (talk | contribs) (Localized to french) |
Wiki Scribe (talk | contribs) m (Robot: <pre> -> <lsl>) |
||
Line 11: | Line 11: | ||
L’ordre de tri est influencé par le type de chaque élément.<br/> | L’ordre de tri est influencé par le type de chaque élément.<br/> | ||
Chaque type est trié comme un list séparé puis les éléments sont recombinés dans un même list pour avoir le même ordre (cf exemple suivant). | Chaque type est trié comme un list séparé puis les éléments sont recombinés dans un même list pour avoir le même ordre (cf exemple suivant). | ||
< | <lsl>llListSort([1, "C", 3, "A", 2, "B"], 1, TRUE) == [1, "A", 2, "B", 3, "C"] | ||
llListSort([1, 3, 2, "C", "A", "B"], 1, TRUE) == [1, 2, 3, "A", "B", "C"] | llListSort([1, 3, 2, "C", "A", "B"], 1, TRUE) == [1, 2, 3, "A", "B", "C"] | ||
llListSort([1, "C", 3, "A", 2, "B"], 2, TRUE) == [1, "C", 2, "B", 3, "A"]</ | llListSort([1, "C", 3, "A", 2, "B"], 2, TRUE) == [1, "C", 2, "B", 3, "A"]</lsl> | ||
|caveats=Un tri bulle a une complexité en N*N. La raison pour laquelle Linden Labs n’utilise pas un algorithme en N*log(N) tel que le [http://en.wikipedia.org/wiki/Heapsort tri tête] ou le [http://en.wikipedia.org/wiki/Mergesort tri fusion] est à ce jour inconnu... | |caveats=Un tri bulle a une complexité en N*N. La raison pour laquelle Linden Labs n’utilise pas un algorithme en N*log(N) tel que le [http://en.wikipedia.org/wiki/Heapsort tri tête] ou le [http://en.wikipedia.org/wiki/Mergesort tri fusion] est à ce jour inconnu... | ||
|constants | |constants |
Latest revision as of 19:14, 4 August 2009
LSL Portail Francophone | LSL Portail Anglophone | Fonctions | Évènements | Types | Operateurs | Constantes | Contrôle d'exécution | Bibliothèque | Tutoriels |
Description
Fonction: list llListSort( list src, integer pas, integer croissant );184 | N° de fonction |
0.0 | Delais |
10.0 | Energie |
Renvoie un list correspondant au list src dont les éléments de chaque pas ont été triés.
• list | src | – | List à trier. | |
• integer | pas | – | Ecart entre deux éléments à trier, si la données est inférieure à 1, la valeur est considérée comme étant égale à 1. | |
• integer | croissant | – | Si FALSE alors, le tri est décroissant, sinon croissant. |
Spécifications
Un tri bulle est utilisé pour effectuer l’opération.
L’ordre de tri est influencé par le type de chaque élément.
Chaque type est trié comme un list séparé puis les éléments sont recombinés dans un même list pour avoir le même ordre (cf exemple suivant).
<lsl>llListSort([1, "C", 3, "A", 2, "B"], 1, TRUE) == [1, "A", 2, "B", 3, "C"]
llListSort([1, 3, 2, "C", "A", "B"], 1, TRUE) == [1, 2, 3, "A", "B", "C"]
llListSort([1, "C", 3, "A", 2, "B"], 2, TRUE) == [1, "C", 2, "B", 3, "A"]</lsl>
Avertissements
Un tri bulle a une complexité en N*N. La raison pour laquelle Linden Labs n’utilise pas un algorithme en N*log(N) tel que le tri tête ou le tri fusion est à ce jour inconnu...
Exemples
list numbers = [3, "trois", 2, "deux", 1, "un"]; default { state_entry() { llOwnerSay(llDumpList2String(numbers, ",")); // Object: 3,trois,2,deux,1,un numbers = llListSort(numbers, 2, TRUE); llOwnerSay(llDumpList2String(numbers, ",")); // Object: 1,un,2,deux,3,trois } }
Notes avancées
Code source
lsa_bubble_sort(): 'linden\indra\lscript\lscript_alloc.h'