No. 5 St. John's edged out No. 4 Kansas in a buzzer-beating thriller to set up a Sweet 16 matchup with No. 1 Duke.