The sixth-seeded Williams needed a tournament-record 23 aces to get past Zheng after dropping the first set in a marathon match that lasted nearly 2 ½ hours.
Williams prevailed 6-7 (5-7), 6-2, 9-7 against her 25th-seeded opponent and will face Yaroslava Shvedova of Kazakhstan in the fourth round, which begins Monday. Shvedova advanced with a convincing 6-0, 6-4 win over No. 10 seed Sara Errani of Italy.
Williams is now 6-0 against Zheng, but it wasn't easy for the American veteran. Williams committed 24 unforced errors but also had 54 winners in the match. Williams led 8-7 in the final set but Zheng hung on by fighting off two match points before Williams knocked in the winner on a return of a shot down the right sideline.
Other winners Saturday included defending champion Petra Kvitova, No. 2 seed Victoria Azarenka of Belarus and 14th-seeded Ana Ivanovic of Serbia.