Как сделать универсальный алгоритм проверки комбинации пятнашек на решаемость?
================================================================================

 Имеется двумерный массив, все ячейки которого заполнены случайными неповторяющимися числами, кроме одной. Положение пустой ячейки в массиве всегда разное. Как убедиться, что сгенерированная комбинация решаема? Нашёл несколько примеров описания такого алгоритма в интернете, но они не помогли. 

 Считайте количество инверсий. Если нечётное - решения нет.