I usually use pattern bush for attack. You get hordes of 5 heracross there. Also 3 spinarak, which also give attack, and ledyba (special defense).
I usually use cape brink for special attack, since it's close to a pokemon center, gives decent EVs per psyduck/golduck horde and I can't afford wasting leppa berries on it. Sadly often gives defence in the form of slowpoke/slowbro hordes. Pokemon tower sucks, I only use it in the rain. At most it gives 4 EVs.
For speed I use the canyon entrace, since there's a guarateed 8 EVs per horde. I'll have to test 5 island meadow.
Best place for special defence is without a doubt trainer tower, with common mantine hordes and tentacool/tentacruel hordes.
For Hp I use route 114.
For defense I use the magma hideout, the geodude/graveler hordes tend to give good EVs.