Malaysia's Prime Minister Najib Razak has replaced his deputy amid a continuing financial scandal.
Muhyiddin Yassin had criticised Mr Najib's handling of allegations surrounding a state investment fund.
Mr Najib has denied allegations that nearly $US700m ($NZ1 billion) was transferred to his personal bank accounts from the 1MDB (1Malaysia Development Berhad) fund, which he set up in 2009.
Attorney General Abdul Gani Patail, who led the investigation into the scandal, was also replaced, state media said.
A statement carried by news agency Bernama said his dismissal was on health grounds.
Announcing the dismissal of Mr Muhyiddin on television, Mr Najib said that differences in opinion were "not supposed to be expressed in an open forum, which is against the concept of collective responsibility in the government".
He said the decision was "a very difficult one, but I had to do it so a strong team can move forward".
Mr Muhyiddin has been replaced by former home minister Zahid Hamidi, Mr Najib said.
Four other ministers have also been replaced in a cabinet reshuffle.
1MDB said it had never given money to Mr Najib and that the allegations were unsubstantiated. Mr Najib said he was the victim of "political sabotage".