I am wondering if I charge per image, do I edit all the photos and then let the client choose or do they choose the ones for me to edit?
It completely depends on the circumstances around your photography. We used to run some standard filters around High School Seniors and sports photos but saved more intense editing until after purchase.
Personally, I've never shown a wedding photo that wasn't edited.
If you can realistically get away with minimal or automated editing, then you'll save a lot of time. If there's a chance that displaying photos of this quality will hurt your reputation or the client's perception of value of your photos, then you should edit before showing.
There's 'editing' (culling out the bad shots and near-duplicates, basic global adjustments for such things as color correction and exposure, cropping and straightening, etc.) and then there's Editing (extensive layer based localized color and contrast adjustments, frequency separation to smooth skin, selective sharpening, etc.).
For most cases it makes good sense to do the former before any images are shown to a client, particularly if the edits can be done by batch. Unless the contract is structured so that you are compensated for doing the latter to every image you present to the client, it doesn't make much sense to do more extensive editing to every single image you will present to your client if not all of those images will eventually be delivered as final product.
This would particularly be the case if you are going to present a very large number of images from which the client can select a much more limited number of images to be delivered as finished product.