optimize nearby stations with heap