Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 7 additions & 37 deletions lib/node_modules/@stdlib/blas/ext/to-sortedhp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,16 +35,12 @@ var toSortedhp = require( '@stdlib/blas/ext/to-sortedhp' );
Returns a new [ndarray][@stdlib/ndarray/ctor] containing the elements of an input [ndarray][@stdlib/ndarray/ctor] sorted along one or more [ndarray][@stdlib/ndarray/ctor] dimensions using heapsort.

```javascript
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var array = require( '@stdlib/ndarray/array' );

var x = array( [ -1.0, 2.0, -3.0 ] );

var y = toSortedhp( x );
// returns <ndarray>

var arr = ndarray2array( y );
// returns [ -3.0, -1.0, 2.0 ]
// returns <ndarray>[ -3.0, -1.0, 2.0 ]
```

The function has the following parameters:
Expand All @@ -61,98 +57,72 @@ The function accepts the following options:
By default, the function sorts elements in increasing order. To sort in a different order, provide a `sortOrder` argument.

```javascript
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var array = require( '@stdlib/ndarray/array' );

var x = array( [ -1.0, 2.0, -3.0 ] );

var y = toSortedhp( x, -1.0 );
// returns <ndarray>

var arr = ndarray2array( y );
// returns [ 2.0, -1.0, -3.0 ]
// returns <ndarray>[ 2.0, -1.0, -3.0 ]
```

In addition to numeric values, one can specify the sort order via one of the following string literals: `'ascending'`, `'asc'`, `'descending'`, or `'desc'`. The first two literals indicate to sort in ascending (i.e., increasing) order. The last two literals indicate to sort in descending (i.e., decreasing) order.

```javascript
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var array = require( '@stdlib/ndarray/array' );

var x = array( [ -1.0, 2.0, -3.0 ] );

// Sort in ascending order:
var y = toSortedhp( x, 'asc' );
// returns <ndarray>

var arr = ndarray2array( y );
// returns [ -3.0, -1.0, 2.0 ]
// returns <ndarray>[ -3.0, -1.0, 2.0 ]

// Sort in descending order:
y = toSortedhp( x, 'descending' );
// returns <ndarray>

arr = ndarray2array( y );
// returns [ 2.0, -1.0, -3.0 ]
// returns <ndarray>[ 2.0, -1.0, -3.0 ]
```

By default, the function performs the operation over all elements in a provided input [ndarray][@stdlib/ndarray/ctor]. To perform the operation over specific dimensions, provide a `dims` option.

```javascript
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var array = require( '@stdlib/ndarray/array' );

var x = array( [ -1.0, 2.0, -3.0, 4.0 ], {
'shape': [ 2, 2 ],
'order': 'row-major'
});

var v = ndarray2array( x );
// returns [ [ -1.0, 2.0 ], [ -3.0, 4.0 ] ]

var y = toSortedhp( x, {
'dims': [ 0 ]
});
// returns <ndarray>

v = ndarray2array( y );
// returns [ [ -3.0, 2.0 ], [ -1.0, 4.0 ] ]
// returns <ndarray>[ [ -3.0, 2.0 ], [ -1.0, 4.0 ] ]
```

To specify the output [ndarray][@stdlib/ndarray/ctor] [data type][@stdlib/ndarray/dtypes], provide a `dtype` option.

```javascript
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var array = require( '@stdlib/ndarray/array' );

var x = array( [ -1.0, 2.0, -3.0 ] );

var y = toSortedhp( x, {
'dtype': 'float32'
});
// returns <ndarray>

var arr = ndarray2array( y );
// returns [ -3.0, -1.0, 2.0 ]
// returns <ndarray>[ -3.0, -1.0, 2.0 ]
```

#### toSortedhp.assign( x, out\[, sortOrder]\[, options] )

Sorts the elements of an input [ndarray][@stdlib/ndarray/ctor] along one or more [ndarray][@stdlib/ndarray/ctor] dimensions using heapsort and assigns the results to an output [ndarray][@stdlib/ndarray/ctor].

```javascript
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var zeros = require( '@stdlib/ndarray/zeros' );
var array = require( '@stdlib/ndarray/array' );

var x = array( [ -1.0, 2.0, -3.0 ] );
var y = zeros( [ 3 ] );

var out = toSortedhp.assign( x, y );
// returns <ndarray>

var arr = ndarray2array( out );
// returns [ -3.0, -1.0, 2.0 ]
// returns <ndarray>[ -3.0, -1.0, 2.0 ]

var bool = ( y === out );
// returns true
Expand Down
10 changes: 4 additions & 6 deletions lib/node_modules/@stdlib/blas/ext/to-sortedhp/docs/repl.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,8 @@
Examples
--------
> var x = {{alias:@stdlib/ndarray/array}}( [ -1.0, 2.0, -3.0, -4.0 ] );
> var out = {{alias}}( x );
> {{alias:@stdlib/ndarray/to-array}}( out )
[ -4.0, -3.0, -1.0, 2.0 ]
> var out = {{alias}}( x )
<ndarray>[ -4.0, -3.0, -1.0, 2.0 ]


{{alias}}.assign( x, out[, sortOrder][, options] )
Expand Down Expand Up @@ -112,9 +111,8 @@
--------
> var x = {{alias:@stdlib/ndarray/array}}( [ -1.0, 2.0, -3.0, -4.0 ] );
> var y = {{alias:@stdlib/ndarray/zeros}}( [ 4 ] );
> var out = {{alias}}.assign( x, y );
> {{alias:@stdlib/ndarray/to-array}}( out )
[ -4.0, -3.0, -1.0, 2.0 ]
> var out = {{alias}}.assign( x, y )
<ndarray>[ -4.0, -3.0, -1.0, 2.0 ]
> var bool = ( out === y )
true

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,16 +78,12 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var array = require( '@stdlib/ndarray/array' );
*
* var x = array( [ -1.0, 2.0, -3.0 ] );
*
* var y = toSortedhp( x );
* // returns <ndarray>
*
* var arr = ndarray2array( y );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*/
<T extends InputArray = InputArray>( x: T, options?: BaseOptions ): T;

Expand All @@ -107,16 +103,12 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var array = require( '@stdlib/ndarray/array' );
*
* var x = array( [ -1.0, 2.0, -3.0 ] );
*
* var y = toSortedhp( x );
* // returns <ndarray>
*
* var arr = ndarray2array( y );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*/
<T extends InputArray = InputArray, U extends OutputArray = OutputArray>( x: T, options?: Options ): U; // NOTE: we lose type specificity here. We can likely address this with type maps

Expand All @@ -137,16 +129,12 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var array = require( '@stdlib/ndarray/array' );
*
* var x = array( [ -1.0, 2.0, -3.0 ] );
*
* var y = toSortedhp( x, 1.0 );
* // returns <ndarray>
*
* var arr = ndarray2array( y );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*/
<T extends InputArray = InputArray>( x: T, sortOrder: SortOrder, options?: BaseOptions ): T;

Expand All @@ -167,16 +155,12 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var array = require( '@stdlib/ndarray/array' );
*
* var x = array( [ -1.0, 2.0, -3.0 ] );
*
* var y = toSortedhp( x, 1.0 );
* // returns <ndarray>
*
* var arr = ndarray2array( y );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*/
<T extends InputArray = InputArray, U extends OutputArray = OutputArray>( x: T, sortOrder: SortOrder, options?: Options ): U; // NOTE: we lose type specificity here. We can likely address this with type maps

Expand All @@ -197,7 +181,6 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var zeros = require( '@stdlib/ndarray/zeros' );
* var array = require( '@stdlib/ndarray/array' );
*
Expand All @@ -206,10 +189,7 @@ interface ToSortedhp {
* var y = zeros( [ 3 ] );
*
* var out = toSortedhp.assign( x, y );
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*
* var bool = ( out === y );
* // returns true
Expand All @@ -234,7 +214,6 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var zeros = require( '@stdlib/ndarray/zeros' );
* var array = require( '@stdlib/ndarray/array' );
*
Expand All @@ -243,10 +222,7 @@ interface ToSortedhp {
* var y = zeros( [ 3 ] );
*
* var out = toSortedhp.assign( x, y, 1);
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*
* var bool = ( out === y );
* // returns true
Expand All @@ -271,19 +247,14 @@ interface ToSortedhp {
* @returns output ndarray
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var array = require( '@stdlib/ndarray/array' );
*
* var x = array( [ -1.0, 2.0, -3.0 ] );
*
* var y = toSortedhp( x, 1.0 );
* // returns <ndarray>
*
* var arr = ndarray2array( y );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*
* @example
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var zeros = require( '@stdlib/ndarray/zeros' );
* var array = require( '@stdlib/ndarray/array' );
*
Expand All @@ -292,10 +263,7 @@ interface ToSortedhp {
* var y = zeros( [ 3 ] );
*
* var out = toSortedhp.assign( x, y );
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ -3.0, -1.0, 2.0 ]
* // returns <ndarray>[ -3.0, -1.0, 2.0 ]
*
* var bool = ( out === y );
* // returns true
Expand Down
6 changes: 1 addition & 5 deletions lib/node_modules/@stdlib/blas/ext/to-sortedhp/lib/assign.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@ var format = require( '@stdlib/string/format' );
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var zeros = require( '@stdlib/ndarray/zeros' );
* var ndarray = require( '@stdlib/ndarray/ctor' );
*
Expand All @@ -75,10 +74,7 @@ var format = require( '@stdlib/string/format' );
*
* // Perform operation:
* var out = assign( x, y );
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
* // returns <ndarray>[ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
*
* var bool = ( y === out );
* // returns true
Expand Down
12 changes: 2 additions & 10 deletions lib/node_modules/@stdlib/blas/ext/to-sortedhp/lib/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var ndarray = require( '@stdlib/ndarray/ctor' );
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var toSortedhp = require( '@stdlib/blas/ext/to-sortedhp' );
*
* // Create a data buffer:
Expand All @@ -46,14 +45,10 @@
*
* // Perform operation:
* var out = toSortedhp( x );
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
* // returns <ndarray>[ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var zeros = require( '@stdlib/ndarray/zeros' );
* var ndarray = require( '@stdlib/ndarray/ctor' );
* var toSortedhp = require( '@stdlib/blas/ext/to-sortedhp' );
Expand All @@ -78,10 +73,7 @@
*
* // Perform operation:
* var out = toSortedhp.assign( x, y );
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
* // returns <ndarray>[ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
*
* var bool = ( y === out );
* // returns true
Expand Down
6 changes: 1 addition & 5 deletions lib/node_modules/@stdlib/blas/ext/to-sortedhp/lib/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,6 @@ var format = require( '@stdlib/string/format' );
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var ndarray2array = require( '@stdlib/ndarray/to-array' );
* var ndarray = require( '@stdlib/ndarray/ctor' );
*
* // Create a data buffer:
Expand All @@ -76,10 +75,7 @@ var format = require( '@stdlib/string/format' );
*
* // Perform operation:
* var out = toSortedhp( x );
* // returns <ndarray>
*
* var arr = ndarray2array( out );
* // returns [ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
* // returns <ndarray>[ [ [ -5.0, -3.0 ] ], [ [ 1.0, 2.0 ] ], [ [ 4.0, 6.0 ] ] ]
*/
function toSortedhp( x ) {
var sortOrder;
Expand Down