Alexander Zverev felt a patient approach paid off against John Isner as he made sure not to miss out on the knockout stages of the ATP Finals for a second successive year.
German Zverev failed to qualify for the semi-finals in 2017 after losing his final group match, going down in a three-set thriller against Jack Sock at the O2.
However, the world number five made sure history was not repeated when facing another American opponent this year, recording a 7-6 (7-5) 6-3 triumph over John Isner to set up a clash with Roger Federer on Saturday.
In a tightly fought contest, the 21-year-old from Hamburg recorded the only break against the big-serving Isner, who bowed out of the season-ending tournament with a third straight defeat.
"Against John, you have to be patient. There are going to be a lot of games where you really don't touch the ball on his serve," Zverev told Sky Sports.
"That's what happened for one and a half sets basically, so you've really got to take your chances when you get them.
"I did that well today and I'm very happy to be through to get another chance to play tomorrow."
Zverev admitted the memories of losing to Sock at the same venue a year earlier had motivated him ahead of his final outing in Group Guga Kuerten.
"I was in the same position last year against Jack Sock and missed my opportunity to go through," he added.
"I really wanted to do it differently this year, I really wanted to come out and be aggressive, play the best game I can and give myself the best possible chance to be in the semi-finals."
In the other last-four clash, top seed Novak Djokovic will take on Kevin Anderson of South Africa.