LeBron James hit a jump shot on the buzzer in overtime to seal a much-needed victory for the Cleveland Cavaliers against the Minnesota Timberwolves.

The game-winning shot snapped an eight-game losing streak for the Cavs and clinched a 140-138 win.

James recorded a triple-double, finishing on 37 points, 10 rebounds and 15 assists.

The San Antonio Spurs, meanwhile, stunned the Phoenix Suns, beating them 129-81.

The Spurs clocked up a lead of 38 points by half-time – the largest lead the franchise has ever had after the second quarter.

The Houston Rockets continued their winning ways by overcoming the Miami Heat 109-101.

James Harden scored 41 points – breaking the 40-point mark for the eighth time this season – as the Rockets recorded their sixth consecutive win.

There was a fifth straight victory for the Detroit Pistons, as they triumphed 115-106 over the Brooklyn Nets.

Blake Griffin helped keep the Nets at arms length in the final moments of the game, scoring 11 of his 25 points after re-entering with seven minutes left to play.

And a seventh win in a row was the order of the day for the Utah Jazz, with Ricky Rubio’s 29 points powering them to a 92-88 victory over the Memphis Grizzlies.

A game between the New Orleans Pelicans and the Indiana Pacers was postponed due to a leak in the roof at the arena in New Orleans.