Originally posted by: PangaNaLe
When Rose landed in America, she put her past life behind. She had nothing and she could've sold that necklace for a fortune. But she didn't because it was gifted by Cal. She built her life without it, and it won't have been easy to resist selling it, whenever she faced any financial trouble or had to fight to survival.
The necklace became a symbol of her strength. And Jack's memory was also attached to the necklace. Since she wore it when Jack drew her picture. It was the only thing to remind her of him. When Rose told her and Jack's story to her granddaughter, Lovett and his crew, Jack also became a part of their memories. After that she didn't need the necklace. But it still meant a lot to her to give it away to a random guy. She threw it away in the ocean in the honour of Jack.
Was it selfish? In real world sense it was. But according to movie's theme it wasn't. Because for Rose the necklace wasn't precious because it was worth millions. It had a deeper emotional value for her. The necklace was named "Heart of the Ocean". It symbolizes Rose's heart, which always belonged in the ocean because that's where Jack died. Also how she gave her heart to him by throwing the necklace in the ocean, and later on dying in her sleep in the exact location where Jack died to reuinte with him.
12