If you use a super rod in the water in viridian city you can find one sometimes.
When you give the poliwhirl a water stone
you can get a poliwhirl or a poliwag and evolve to poliwhirl!! then trade poliwhirl holding a king's rock.
you have to have a poliwhirl and give it a kings rock and then trade it.
by trading poliwhirl with the kings rock
If you have access to Two Island, look in the Cape Brink for Poliwhirl.
poliwhirl, evee and some others
poliwhirl evolves into poliwrath with a water stone
There is one King's Rock to be found in Pokemon FireRed in Sevault Canyon. They can also sometimes be found on wild Pokemon like Poliwhirl.
use a super rod on the pond north of vermilion city
Trade the poliwhirl while it holds the item King's Rock then ask for the politoed back from the person you traded it to.
Trade with a man in Cerulean City for one. I believe you need a Poliwhirl.
Poliwhirl → Poliwrath, Shellder → Cloyster, Staryu → Starmie and Eevee → Vaporeon