linear sort