fix: add deterministic selection sort