It's difficult to answer your question without knowing what ports this ship will be using. Depending on how far away those can be from what people want to see, it can be best to make some sort of arrangements beforehand.
In any case, to avoid the high price of ship excursions, you need to research your ports ahead of time for those you can easily do on your own via public transit or other means, and how to do those. For instance, this forum sees a lot of questions from cruisers wanting to know how to "do" Rome on their own from the port in Civitavecchia, which is at least an hour away from the city.