Williams attended Roosevelt High School in Seattle before playing college basketball for University of Arizona from 2005 to 2007. In 2005–06, he played in all 33 of Arizona's games and started 25 games. Williams was the second leading scorer, averaging 13.0 points per game while leading the team in three point field goal percentage. He also averaged 4.7 rebounds and 1.8 assists per game. His performance was good enough to earn him a spot on the Pac-10 all-freshman team. After considering entering the 2006 NBA draft, he returned for his sophomore year and was named to the All-Pac-10 first team. On April 5, 2007, he declared for the NBA draft, foregoing his final two years of college eligibility.