Skip to content

Commit 8701241

Browse files
committed
Update description selection algorithm.
1 parent a354a29 commit 8701241

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

src/lib.rs

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1142,8 +1142,9 @@ where
11421142
///
11431143
/// # Current Implementation
11441144
///
1145-
/// The current algorithm is based on the quickselect portion of the same quicksort algorithm
1146-
/// used for [`sort_unstable`].
1145+
/// The current algorithm is an introselect implementation based on Pattern Defeating Quicksort, which is also
1146+
/// the basis for [`sort_unstable`]. The fallback algorithm is Median of Medians using Tukey's Ninther for
1147+
/// pivot selection, which guarantees linear runtime for all inputs.
11471148
///
11481149
/// [`sort_unstable`]: Slice1Ext::sort_unstable
11491150
///
@@ -1193,8 +1194,9 @@ where
11931194
///
11941195
/// # Current Implementation
11951196
///
1196-
/// The current algorithm is based on the quickselect portion of the same quicksort algorithm
1197-
/// used for [`sort_unstable`].
1197+
/// The current algorithm is an introselect implementation based on Pattern Defeating Quicksort, which is also
1198+
/// the basis for [`sort_unstable`]. The fallback algorithm is Median of Medians using Tukey's Ninther for
1199+
/// pivot selection, which guarantees linear runtime for all inputs.
11981200
///
11991201
/// [`sort_unstable`]: Slice1Ext::sort_unstable
12001202
///
@@ -1245,8 +1247,9 @@ where
12451247
///
12461248
/// # Current Implementation
12471249
///
1248-
/// The current algorithm is based on the quickselect portion of the same quicksort algorithm
1249-
/// used for [`sort_unstable`].
1250+
/// The current algorithm is an introselect implementation based on Pattern Defeating Quicksort, which is also
1251+
/// the basis for [`sort_unstable`]. The fallback algorithm is Median of Medians using Tukey's Ninther for
1252+
/// pivot selection, which guarantees linear runtime for all inputs.
12501253
///
12511254
/// [`sort_unstable`]: Slice1Ext::sort_unstable
12521255
///

0 commit comments

Comments
 (0)