As a very general rule, one gets bad or very bad exchange rates and fees when trying to change US$ to foreign currency in the USA. In many cases, you must order it in advance (especially for less common currencies) from your (major commercial) bank, which is also a hassle, or use one of the currency exchange places in major airports (which sometimes don't have stocks of the currency you need) in major USA airports. If you'll mostly be using credit cards, so that we're not talking about carrying huge amounts of cash (remember that movements of $10,000+ must be reported), you can just carry nice new US$ bills in larger denominations (but not larger than what you'll need to change) and do a cash to cash exchange in a bank at the airport.
Also, if the amounts are reasonable, it might not be worth inconveniencing yourself greatly in order to get a slightly better deal on the exchange rate and fees. Nevertheless, this doesn't mean that you should plan to change money in hotels/shops/restaurants in most countries.
Do not engage in "black market" exchanges, for instance on the street or near the main square in Prague as you risk (at best) getting counterfeit money or otherwise being cheated.
Especially if you have one or more credit cards that don't impose foreign transaction fees, try to pay as much as possible by credit card in the local currency. Do not accept any offers to charge your card in dollars, aka dynamic currency conversion.