MILWAUKEE -- The Iowa State Cyclones rallied from a 19-point second-half deficit but couldn't find a way to stop Caleb Swanigan, who scored 20 points, grabbed 12 rebounds and dished out seven assists as Purdue advanced to the Sweet 16 with an 80-76 victory Saturday night at Bradley Center.

Purdue advanced to the Sweet 16 for the first time since 2010. Purdue moves on to Kansas City, where it will face either top-seeded Kansas or No. 9 Michigan State in a Midwest Regional semifinal.

Vincent Edwards led No. 4 Purdue (27-7) with 21 points on 9-of-14 shooting, while Isaac Haas added 14 points in 15 minutes.

Deonte Burton scored 17 of his team-high 25 points in the second half for Iowa State (24-11).

The fifth-seeded Cyclones got off to a balky start, making just 3 of 11 attempts as the Boilermakers jumped out to a 15-8 lead.

The Cyclones hit on five of their next six to close the gap, but Purdue hit 17 of 30 shots, including six 3-pointers, to take a 44-31 lead into halftime.

After falling behind by 19, the Cyclones made their move: A 23-7 run, including 12 unanswered, made it a three-point game with 8:02 to play.

Swanigan's jumper stabilized the Boilermakers, who went back ahead by six when Edwards completed a three-point play with 5:59 remaining.

Still, the Cyclones weren't done. A layup and 3-pointer from Burton made it a 68-67 game with 5:08 to go, and Thomas tied it up on a jumper with 3:45 left.

Burton followed with a pair of free throws to give Iowa State its first lead of the night, but it didn't last long: Edwards found P.J. Thompson for a 3-pointer to put the Boilermakers ahead by one, and Swanigan's layup made it 76-73.

Edwards hit a jumper that put Purdue up five, and Ryan Cline forced a turnover, but Purdue couldn't cash in. Burton's driving layup got the Cyclones within a possession with 53 seconds left, but Thompson iced it with a pair of free throws in the closing seconds.

NOTES: The Cyclones have lost in the second round in six of their last seven NCAA Tournament appearances. ... Purdue F Caleb Swanigan recorded his 28th double-double of the season, the most among Division I players this year and the most in one season by a Big Ten player.