Updated

The Cleveland Cavaliers had a plan and worked it to perfection.

Dion Waiters scored 18 points, and the Cavaliers snapped a six-game losing streak with a 94-82 victory over the Milwaukee Bucks on Saturday night.

Cavaliers coach Byron Scott knew he had to slow down Brandon Jennings and Monta Ellis. Cleveland shut down Jennings, but Ellis shredded the defense and scored a season-high 37 points.

"With that backcourt and the type of the firepower they have, you have to slow one of them down," Scott said. "We kept Jennings in check pretty much the whole night. That was a big time key."

Jennings was 3 of 13 from the floor. Ellis was 15 of 27.

Cleveland had all five starters score in double figures, which offset Ellis' performance.

C.J. Miles added 16 points, and Kyrie Irving had 15 for the Cavaliers, playing without starting center Anderson Varejao for the third straight game because of a bruised right knee.

Tristan Thompson had 14 points and 14 rebounds, Tyler Zeller, who started for Varejao, had 11 points and 10 boards. Alonzo Gee finished with 10 points for the Cavaliers.

"We came in with the mindset that we are going to compete for 48 minutes," Irving said. "Once we go out there and perform the way we do, it all speaks for itself."

The Bucks had won the previous nine games against the Cavaliers.

Both teams played Friday night, but Cleveland came out with more energy and led the entire game. The Cavaliers fell to Indiana 99-89 at home one night earlier, and Milwaukee beat Boston 99-94 in overtime on the road.

"We did start the game off kind of slow," Ellis said. "They built the early lead. They sustained it the whole game. We made our run, but never could get back enough to change the momentum of the game."

Marquis Daniels scored nine points for Milwaukee.

Daniels said the game in Boston wasn't the reason for the loss to Cleveland on Saturday.

"We're never going to say we're tired or anything," he said. "Shots weren't falling. Give them all the credit. They played good defense. They had a plan. They came in and stuck with it."

Milwaukee shot 31 of 79 (39.2 percent). Cleveland was 38 of 88 (43.2 percent).

After Milwaukee cut it its deficit to four points with 6:32 left, Zeller made two free throws, and Miles added a jumper to give the Cavaliers an 86-72 lead.

NOTES: Zeller made his third consecutive start in place of Varejao. Zeller missed his first 10 shots before scoring on a putback in the third. ... Referee Haywoode Workman played eight seasons for four teams in the NBA, including 1999-2000 for the Bucks. ... Varejao stayed in Cleveland to receive treatment. ... Cleveland's Luke Walton finished with seven points, six rebounds and four assists in 24 minutes, all season highs.