In order from best to worst, all of these cards are a great option. Results from bf3 max settings at 1920x1080 resolution btw
1. asus 7970 platinum will get 80 fps $500 but will be hard to find (when overclocked)
2. nvidia gtx 680 will get 75-80 fps $500
3. nvidia gtx 670 will get 70 fps $400
4. nvidia gtx 660 ti will get 60 fps $300