Encode and Decode TinyURL (#535)

TinyURL is a URL shortening service where you enter a URL such as https://leetcode.com/problems/design-tinyurl and it returns a short URL such as http://tinyurl.com/4e9iAk.

Design a class to encode a URL and decode a short URL.

There is no restriction on how your encode/decode algorithm should work. You just need to ensure that a URL can be encoded to a tiny URL and the tiny URL can be decoded to the original URL.

Implement the Codec class:

  • Codec() Initializes the object.
  • String encode(String longUrl) Returns a tiny URL for the given longUrl.
  • String decode(String shortUrl) Returns the original URL for the given shortUrl. It is guaranteed that the given shortUrl was encoded by the same object.

Company Tags: Amazon, Google, Microsoft

Core Concept: System Design, Hashing

Solve on LeetCode