Both sorted sub - arrays must be adjacent in ' a ' ' an ' is the length of the first sorted section in ' a ' ' bn ' is the length of the second sorted section in ' a '
static void merge ( int * a , size_t an , size_t bn ) { int * b = a + an , * e = b + bn , * s , t ;