Great. I'm currently just getting through those woods outside Azalea. You advised getting a Heracross, so I went back to Azalea (since that's the nearest area you can get Heracri from headbutting).

I headbutted every tree.

The ones that had pokemon, I headbutted 9 more times.

No heracri.

So, do I wait to get one until much, much, much later, or do I make the long, long, long trek back to that route north of the first one you go on, then grind it up enormously?