Swim isn't a move. Surf is, and most water types can. If you search "Surf" on bulbapedia.org, it will give you a more accurate list.
Chat with our AI personalities
Sut there are no Pokemon that can swim in fast current. you can only surf in normal water.
All Pokemon with a water-type can learn it. There are some other Pokemon that can learn it, but mostly water-Pokemon.
Never!
YOU can't swim but your Pokemon can. There is a Hm called surf. I'm not sure where you get it but you teach it to a water Pokemon and when you get near water push a and it will say,"The water is a a deep blue color... would you like to use surf?" And that's how you use and how your Pokemon can swim!
I don't know all of the Pokemon that can learn Headbutt, but I know that Cubone can learn it.