Answer
In 2015, AB de Villiers broke Corey Anderson's record for the fastest ODI century. Anderson had set the previous record in 2014, scoring a century in 36 balls. De Villiers surpassed this by scoring a century in just 31 balls against the West Indies in Johannesburg. This record has not been broken since, and de Villiers remains the holder of the fastest ODI century.