MIAMI — Nikola Jokic had 29 points, 11 rebounds and 10 assists for his fourth triple-double of the season, and his basket with 2.4 seconds left put the Western Conference-leading Denver Nuggets ahead to stay in their 103-99 win over the Miami Heat on Tuesday night.
Jamal Murray had 18 points, Trey Lyles added 15, Paul Millsap had 12 and Torrey Craig finished with 11 points and 16 rebounds for the Nuggets.
Dion Waiters returned to the lineup and scored 15 points for Miami, which got 13 apiece from Bam Adebayo and Kelly Olynyk, and 12 each from Hassan Whiteside, Josh Richardson and Justise Winslow.
The Nuggets took a four-point lead with 2 minutes left after Millsap scored, got fouled, missed the free throw - and the Heat tipped in the rebound for a basket that was credited to Torrey Craig.
Adebayo had the next two Miami baskets to tie it again, the second of those coming with 22.9 seconds left and falling after hitting the rim twice. The Nuggets wound up going to Jokic, who took a bounce pass from Murray and dropped a high-arching shot in with 2.4 seconds remaining.
Miami didn't even get a final shot off. Olynyk's lob for Richardson on the inbounds attempt sailed out of bounds - just the sixth, yet most costly, Heat turnover of the night - and Murray made two free throws with 0.9 seconds left to finish the win off.
It was the 20th career triple-double for Jokic. He also became the second center to post one against the Heat, joining Vlade Divac - who did it for the Los Angeles Lakers on Jan. 8, 1995, exactly 24 years prior to Jokic.
Denver's biggest lead was nine points, early in the second quarter. Miami used a 20-8 run later in the second to build what was a four-point lead, and eventually went up by as many as six when Winslow laid in a lob from Richardson for a 59-53 edge early in the third.
The teams were tied going into the fourth, and then the back-and-forth started.
Lyles' 3-pointer with 7:58 left put Denver up 87-81 - before Miami reeled off 12 unanswered, including 3-pointers from Richardson and Waiters, along with a wild alley-oop from Dwyane Wade to Adebayo. That spurt put Miami up 93-87, before the Nuggets scored eight of the next 10 and tied it with 2:39 left on a pair of free throws by Millsap.
Nuggets: Starting guard Gary Harris (left hamstring tightness) went through some efforts to get loose before the game, but was ruled out about an hour before tip-off. Malik Beasley started in his place. ... Isaiah Thomas (right hip surgery) went through a shooting session before the game. He hasn't played yet this season.
Heat: Waiters' minutes came at the expense of Derrick Jones Jr., who didn't play. ... Miami announced another sellout crowd, which means Thursday's game against Boston could be the team's 400th consecutive sellout at home. ... The Heat were only 15 for 25 from the foul line.
Udonis Haslem is continuing to lean toward retirement after the season, saying Tuesday he is "90 percent" certain that his 16th year with the Heat will be his last. Haslem said in September that he is retiring, and hasn't wavered much since. "There's a huge life outside of basketball that I've been preparing for and that's been waiting for me," Haslem said. The Heat still value his leadership, and may want him back for that.
Nuggets guard Brandon Goodwin finished his college career at Florida Gulf Coast - "Dunk City" - about 120 miles from Miami, and was the Atlantic Sun Conference Player of the Year last season. He's made a quick impression on the Nuggets. "Brandon's been great for us. He's a terrific young man," Nuggets coach Michael Malone said.
Nuggets: Host the Los Angeles Clippers on Thursday, the midpoint of a five-game, seven-night run for Denver.
Heat: Host Boston on Thursday, the first of four meetings this season between the clubs.