, , argsort:
data.ravel()[location.ravel().argsort()]
# array([ 4, 7, 3, 9, 3, 12, 15, 11, 3, 5, 0, 7, 2, 5, 6, 8])
import numpy as np
data = np.array([[12, 15, 5, 0],
[ 3, 11, 3, 7],
[ 9, 3, 5, 2],
[ 4, 7, 6, 8]])
location = np.array([[ 5, 6, 9, 10],
[ 4, 7, 8, 11],
[ 3, 2, 13, 12],
[ 0, 1, 14, 15]])