Я что то не могу понять, связанный список, но код разворачивает массив массивов и сортирует элементы в порядке возрастания, разве не? Так почему lists.flatten.sort не годиться?
Тот двуменый массив который подается в Test case, всего лишь представление данных для тестирования. Но не сами данные. Во время тестирования, вложенные массивы переводятся в односвязные списки. Скорее всего этот факт ввел в заблуждение.