@@ -43,31 +43,28 @@ This package has several children:
43
43
## Use
44
44
45
45
``` js
46
+ let array = require ( " aureooms-js-array" ) ;
47
+ let search = require ( " aureooms-js-search" ) ;
46
48
let compare = require ( " aureooms-js-compare" ) ;
47
49
48
- /** quicksort using hoare partitioning */
49
- let quicksort = sort .__quicksort__ ( sort .hoare ) ;
50
+ let fordjohnson = function ( compare , a , i , j ) {
51
+
52
+ sort ._fordjohnson ( search .binarysearch )( compare , array .swap , a , i , j ) ;
53
+
54
+ } ;
50
55
51
56
let a = [ 1 , 6 , 5 , 3 , 2 , 4 ] ;
52
57
53
- quicksort ( compare .increasing , a , 0 , a .length ) ;
58
+ fordjohnson ( compare .increasing , a , 0 , a .length ) ;
54
59
55
60
a ; // [ 1 , 2 , 3 , 4 , 5 , 6 ]
56
61
57
- quicksort ( compare .decreasing , a , 0 , a .length ) ;
62
+ fordjohnson ( compare .decreasing , a , 0 , a .length ) ;
58
63
59
64
a ; // [ 6 , 5 , 4 , 3 , 2 , 1 ]
60
65
61
66
// but also
62
67
63
- /** binary heapsort */
64
- let heapsort = sort .__heapsort__ ( 2 ) ;
65
- /** ternary heapsort */
66
- let heapsort = sort .__heapsort__ ( 3 ) ;
67
- /** quicksort (lomuto) */
68
- let quicksort = sort .__quicksort__ ( sort .lomuto ) ;
69
- /** dualpivotquicksort (yaroslavskiy) */
70
- let quicksort = sort .__dualpivotquicksort__ ( sort .yaroslavskiy ) ;
71
68
/** insertionsort */
72
69
let insertionsort = sort .insertionsort ;
73
70
/** selectionsort */
@@ -78,5 +75,4 @@ let bubblesort = sort.bubblesort ;
78
75
79
76
## Reference
80
77
81
- - https://kluedo.ub.uni-kl.de/frontdoor/index/index/docId/3463
82
78
- http://sorting.at
0 commit comments