Heat the oil in a large nonstick saute pan over medium-high heat.
Lightly season the fish with salt and add the fillets to the pan and sear until they have good color, about 4 minutes.
Turn over the fillets, reduce the heat to low and cook 1 minute.
Remove the fish to a plate and keep warm.
Add the garlic and shallots to the pan and cook, stirring, for 1 minute.
Add the tomatoes, olives, capers, pepper flakes, vinegar and one-half teaspoon salt and saute 1 minute.
Increase the heat to medium and simmer for about 2 to 3 minutes, until the vegetables are cooked through and the sauce is bubbly. Add the fish back into the sauce during the final minute of cooking.
Transfer the fillets to a platter, spoon the sauce over and sprinkle with freshly ground pepper and the torn basil and serve immediately.