ys memos
Blog

[C++]LeetCode 535 Encode And Decode Tinyurl


leetcode

2022/04/23

C++版

はじめに

TinyURL のような短縮 URL のシステムをデザインする問題

コード全文

main.cpp
class Solution {
  vector<string> urls_;
public:
  string encode(string longUrl) {
    urls_.push_back(longUrl);
    return to_string(urls_.size() - 1);
  }

  string decode(string shortUrl) {
    return urls_[stoi(shortUrl)];
  }
};

解説

前準備

urls_は,登録された URL 一覧を格納するためのもの.

n番目に登録された URL はインデックス番号n-1に格納される.

class Solution {
  vector<string> urls_;

encode()

入力をurls_の末尾に追加し,そのインデックス番号を文字列として返す.

public:
  string encode(string longUrl) {
    urls_.push_back(longUrl);
    return to_string(urls_.size() - 1);
  }

decode()

入力から,登録された URL をurls_から取り出し,返す.

  string decode(string shortUrl) {
    return urls_[stoi(shortUrl)];
  }
};

おわりに

参考

関連タグを探す