In-cabin smoking is no longer permitted on any of the major cruiselines. Beyond that, the restrictions depend on which line you're sailing with. Oceania and Regent are the most restrictive, allowing smoking only in two small designated areas (and the penalties for smoking elsewhere on their ships can be quite harsh). Holland America Line is among the least restrictive, and is currently the only cruiseline permitting passengers to light up on their balconies (however you should always check with the cruiseline in case their policy has recently changed). In general, most cruiseships have designated smoking areas, usually on one side or another of the ship.
For more detailed info, including a line-by-line roundup of smoking policies, check here: http://www.cruisecritic.com/articles.cfm?ID=225