SLAMRG(3)
will create a permutation list which will merge the elements of A (which is composed of two independently sorted sets) into a single set which is sorted in ascending order
SYNOPSIS
- SUBROUTINE SLAMRG(
-
N1, N2, A, STRD1, STRD2, INDEX )
-
INTEGER
N1, N2, STRD1, STRD2
-
INTEGER
INDEX( * )
-
REAL
A( * )
PURPOSE
SLAMRG will create a permutation list which will merge the elements
of A (which is composed of two independently sorted sets) into a
single set which is sorted in ascending order.
ARGUMENTS
- N1 (input) INTEGER
-
N2 (input) INTEGER
These arguements contain the respective lengths of the two
sorted lists to be merged.
- A (input) REAL array, dimension (N1+N2)
-
The first N1 elements of A contain a list of numbers which
are sorted in either ascending or descending order. Likewise
for the final N2 elements.
- STRD1 (input) INTEGER
-
STRD2 (input) INTEGER
These are the strides to be taken through the array A.
Allowable strides are 1 and -1. They indicate whether a
subset of A is sorted in ascending (STRDx = 1) or descending
(STRDx = -1) order.
- INDEX (output) INTEGER array, dimension (N1+N2)
-
On exit this array will contain a permutation such that
if B( I ) = A( INDEX( I ) ) for I=1,N1+N2, then B will be
sorted in ascending order.