STANFORD, Calif. (AP) -- Stanford coach Jarod Haase went to Plan C late in the game -- and that involved Oscar Da Silva guarding the perimeter.
The freshman forward gave his coach something extra.
Da Silva scored eight of his 14 points in the final four minutes and Stanford held on to beat No. 16 Arizona State 86-77 on Wednesday night.
"When we started to struggle, we went zone for the first time, maybe at 5:30," Haase said. "They immediately hit two 3s and I thought we'd move to Plan C."
Reid Travis had 18 points and 10 rebounds for the Cardinal (11-8, 5-1 Pac-12), who nearly squandered a 15-point second half lead. Dorian Pickens added 19 points.
"We knew they would make their run and we were able to respond," Pickens said. "We just tried to be active on defense and get our stops."
Romello White scored 19 points for the Sun Devils (14-4, 2-4 Pac-12), who lost their third road conference game in their last four. Kodi Justice added 14 points, Shannon Evans II had 13 and Remy Martin 11.
"We're accustomed to being in some of those games where we're trying to erase a deficit," Sun Devils coach Bobby Hurley said. "We put a lot of energy into trying to get back into it. We started playing at that level too little, too late. Sometimes all the energy you invest to get back makes it so you can't kick it over the top."
Da Silva was 4 of 6 from the foul line and made two baskets to give Stanford some breathing room. Overall, Da Silva and sophomore center Josh Sharma combined to hit all 11 of their shots, mostly dunks.
Tra Holder, who missed 10 of his first 11 shots, made a 3-pointer with 4:31 remaining to bring the Sun Devils within two at 70-68.
"Tra has been outstanding all year. We'd never have had the record we had if it wasn't for how he's played," Hurley said. "He kind of gets a pass. If he's not shooting it well, we need other guys to step up and make plays."
Freshman point guard Daejon Davis added 13 points and eight assists for Stanford, which hosts No. 14 Arizona on Saturday with first place at stake.
Stanford opened a double-digit lead in the first five minutes of the second half following a dunk from Sharma and led by as many as 15 at 60-45 after another dunk by Sharma.
Davis gave the Cardinal their largest lead of the first half at 31-23 following a layup with 4:30 remaining.
Remy Martin brought the Sun Devils even with a 3-pointer with a minute left, but Davis hit a jumper 21 seconds later to give Stanford a 37-35 halftime lead.