Because of all the laws and regulations, it is very expensive to scrap old warships, especially ones that date from the WWII era building programs. The amount of hazardous materials on these ships makes it too expensive for any U.S. company to handle unless the government is willing to fork over large sums of money. The worst problem is the asbestos which was widely used in WWII era carriers to help protect the ships against fire. When we lost the U.S.S. Lexington (CV 2) at the Battle of the Coral Sea, it was the fires resulting from battle damage which ultimately killed her. When the second Lexington (CV 16) was being converted to a museum, the amount of asbestos on board almost made it too expensive to turn into a museum. Even when it opened to the public, much of the ship was inaccessible because asbestos removal was still ongoing.
We used to send old ships to India for scrapping but after a news report on the working conditions at Indian shipyards, some members of Congress got a law passed prohibiting the Navy from sending old ships to India for disposal.
While I hate to see any warship meet its end, being sunk is a far better fate than the scrappers torches.