CHARLOTTE, N.C. -- The Toronto Raptors are hoping they don't have to see Jeremy Lamb in the playoffs.

Lamb beat the Raptors on a last-second 3-pointer for the second time in less than two weeks, knocking down a 27-footer from near the top of the key with 3.3 seconds left to lift the Charlotte Hornets to a 113-111 win Friday night.

The winning shot came after Lamb hit an improbable half-court buzzer-beater to shock the Raptors in Toronto on March 24 in one of the craziest endings in the NBA this season.

"He's made two great shots -- tonight's was a little easier than the other one," said Raptors guard Fred VanVleet. "Give them credit, those guys are making plays and they're playing for their playoff lives and you can see it in their energy and enthusiasm they have."

Kemba Walker had 29 points, Lamb finished with 22 points and Frank Kaminsky added 22 points and 13 rebounds for the Hornets (37-42), who kept their slim post-season hopes alive and surpassed their win total of the previous two seasons. Charlotte is two games behind eighth-place Brooklyn in the Eastern Conference, with three games remaining. Miami is in ninth place, a game behind the Nets.

It was Lamb's fourth game-winning shot of the season, but he was quick to deflect praise to Walker, who drove the length of the court and delivered a perfect wraparound pass from underneath the basket to set up the winning shot.

"Man, Kemba made a great pass, and everybody said if I get it, shoot it," Lamb said. "I just tried to shoot it with confidence."

Said Kaminsky: "It feels like every time we've needed a big score at the end of the season so far it's been Jeremy."

Kawhi Leonard finished with 29 points for Toronto, but missed a fall-away jumper with 1 second left. Serge Ibaka had 20 points and 12 rebounds and Kyle Lowry had 16 points and 11 assists for the Raptors, who had their five-game win streak snapped.

It was essentially a meaningless game for Toronto (56-24), which is locked into the No. 2 seed in Eastern Conference playoffs regardless of how the rest of the season plays out.

Leonard gave the Raptors the lead when he spun around a defender near the foul line and scored on a layup off the glass with 15 seconds left.

That's when Walker drove the length of the court, drew a double team and kicked it out to Lamb near the top of the key, who found nothing but net. Leonard's fall-away 19-footer got stuck between the rim and the backboard with 1 second left on the clock, forcing a jump ball at midcourt.

"They switched it pretty good and got him down there," Raptors coach Nick Nurse said of Leonard's attempt. "But it wasn't too bad (of a shot) with 3.3 to go that we got Kawhi the ball. He had been hitting everything in sight up until that point."