diff options
author | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2022-10-07 22:47:41 +0200 |
---|---|---|
committer | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2022-10-08 01:16:41 +0200 |
commit | 85b617a6a3a17f05b8e111220daec6eb769a81e8 (patch) | |
tree | 0cbf8074c046dfd9266ff2b88efcdc7cd340cb20 /doc | |
parent | 1baefceababe8a0d63434a231c3799555a45d8e3 (diff) |
Document `Array.sort()` and `sort_custom()` using unstable sorting
Diffstat (limited to 'doc')
-rw-r--r-- | doc/classes/Array.xml | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml index d8c4b8fdb5..047089c917 100644 --- a/doc/classes/Array.xml +++ b/doc/classes/Array.xml @@ -557,6 +557,7 @@ <return type="void" /> <description> Sorts the array. + [b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/wiki/Sorting_algorithm#Stability]stable[/url]. This means that values considered equal may have their order changed when using [method sort]. [b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural order). This may lead to unexpected behavior when sorting an array of strings ending with a sequence of numbers. Consider the following example: [codeblocks] [gdscript] @@ -581,7 +582,8 @@ <param index="0" name="func" type="Callable" /> <description> Sorts the array using a custom method. The custom method receives two arguments (a pair of elements from the array) and must return either [code]true[/code] or [code]false[/code]. For two elements [code]a[/code] and [code]b[/code], if the given method returns [code]true[/code], element [code]b[/code] will be after element [code]a[/code] in the array. - [b]Note:[/b] You cannot randomize the return value as the heapsort algorithm expects a deterministic result. Doing so will result in unexpected behavior. + [b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/wiki/Sorting_algorithm#Stability]stable[/url]. This means that values considered equal may have their order changed when using [method sort_custom]. + [b]Note:[/b] You cannot randomize the return value as the heapsort algorithm expects a deterministic result. Randomizing the return value will result in unexpected behavior. [codeblocks] [gdscript] func sort_ascending(a, b): |