最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++實現(xiàn)LeetCode(205.同構(gòu)字符串)

 更新時間:2021年07月09日 10:48:35   作者:Grandyang  
這篇文章主要介紹了C++實現(xiàn)LeetCode(205.同構(gòu)字符串),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下

[LeetCode] 205. Isomorphic Strings 同構(gòu)字符串

Given two strings s and t, determine if they are isomorphic.

Two strings are isomorphic if the characters in s can be replaced to get t.

All occurrences of a character must be replaced with another character while preserving the order of characters. No two characters may map to the same character but a character may map to itself.

Example 1:

Input: s = "egg", t = "add"
Output: true

Example 2:

Input: s = "foo", t = "bar" Output: false

Example 3:

Input: s = "paper", t = "title"
Output: true

Note:
You may assume both and have the same length.

這道題讓我們求同構(gòu)字符串,就是說原字符串中的每個字符可由另外一個字符替代,可以被其本身替代,相同的字符一定要被同一個字符替代,且一個字符不能被多個字符替代,即不能出現(xiàn)一對多的映射。根據(jù)一對一映射的特點,需要用兩個 HashMap 分別來記錄原字符串和目標(biāo)字符串中字符出現(xiàn)情況,由于 ASCII 碼只有 256 個字符,所以可以用一個 256 大小的數(shù)組來代替 HashMap,并初始化為0,遍歷原字符串,分別從源字符串和目標(biāo)字符串取出一個字符,然后分別在兩個數(shù)組中查找其值,若不相等,則返回 false,若相等,將其值更新為 i + 1,因為默認的值是0,所以更新值為 i + 1,這樣當(dāng) i=0 時,則映射為1,如果不加1的話,那么就無法區(qū)分是否更新了,代碼如下:

class Solution {
public:
    bool isIsomorphic(string s, string t) {
        int m1[256] = {0}, m2[256] = {0}, n = s.size();
        for (int i = 0; i < n; ++i) {
            if (m1[s[i]] != m2[t[i]]) return false;
            m1[s[i]] = i + 1;
            m2[t[i]] = i + 1;
        }
        return true;
    }
};

到此這篇關(guān)于C++實現(xiàn)LeetCode(205.同構(gòu)字符串)的文章就介紹到這了,更多相關(guān)C++實現(xiàn)同構(gòu)字符串內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++結(jié)構(gòu)體字節(jié)對齊和共用體大小

    C++結(jié)構(gòu)體字節(jié)對齊和共用體大小

    這篇文章主要介紹了C++結(jié)構(gòu)體字節(jié)對齊和共用體大小,結(jié)構(gòu)體內(nèi)存對齊在筆試和面試中經(jīng)常被問到,所以這篇文章做個總結(jié),首先通過代碼驗證不同結(jié)構(gòu)體的內(nèi)存大小,需要的朋友可以參考下
    2021-11-11
  • C語言中設(shè)置用戶識別碼的相關(guān)函數(shù)的簡單講解

    C語言中設(shè)置用戶識別碼的相關(guān)函數(shù)的簡單講解

    這篇文章主要介紹了C語言中設(shè)置用戶識別碼的相關(guān)函數(shù)的簡單講解,包括setuid()函數(shù)和setreuid()函數(shù)以及setfsuid()函數(shù),需要的朋友可以參考下
    2015-08-08
  • C語言實現(xiàn)打飛機小游戲

    C語言實現(xiàn)打飛機小游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)簡單的打飛機小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語言進階:指針的進階(5)

    C語言進階:指針的進階(5)

    這篇文章主要介紹了C語言指針詳解及用法示例,介紹了其相關(guān)概念,然后分享了幾種用法,具有一定參考價值。需要的朋友可以了解下
    2021-09-09
  • C++ vector類的模擬實現(xiàn)方法

    C++ vector類的模擬實現(xiàn)方法

    這篇文章主要介紹了C++ vector類的模擬實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • C語言實現(xiàn)類似wget的進度條效果

    C語言實現(xiàn)類似wget的進度條效果

    這篇文章主要介紹了C語言實現(xiàn)類似wget的進度條效果的方法,主要是讓大家可以熟練的使用轉(zhuǎn)移符\r,這里推薦給大家,需要的小伙伴參考下。
    2015-03-03
  • 基于Windows API實現(xiàn)遍歷所有文件并刪除的方法

    基于Windows API實現(xiàn)遍歷所有文件并刪除的方法

    這篇文章主要介紹了基于Windows API實現(xiàn)遍歷所有文件并刪除的方法,是win32應(yīng)用程序的一個比較典型的文件操作應(yīng)用技巧,需要的朋友可以參考下
    2015-04-04
  • 實例講解C++編程中對設(shè)計模式中的原型模式的使用

    實例講解C++編程中對設(shè)計模式中的原型模式的使用

    這篇文章主要介紹了C++編程中對設(shè)計模式中的原型模式的使用實例,包括原型模式中對C++的深拷貝和淺拷貝的處理,需要的朋友可以參考下
    2016-03-03
  • C++面試八股文之了解auto關(guān)鍵字

    C++面試八股文之了解auto關(guān)鍵字

    這篇文章主要為大家介紹了C++面試八股文之了解auto關(guān)鍵字問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • 用C語言實現(xiàn)簡單掃雷小游戲

    用C語言實現(xiàn)簡單掃雷小游戲

    這篇文章主要為大家詳細介紹了用C語言實現(xiàn)簡單掃雷小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07

最新評論

佳木斯市| 凌云县| 仁布县| 新竹市| 罗城| 磐安县| 衡东县| 马山县| 茶陵县| 广饶县| 夏津县| 景德镇市| 南康市| 武邑县| 曲靖市| 深水埗区| 白水县| 芜湖县| 黑水县| 石阡县| 安吉县| 乌拉特中旗| 庆安县| 博湖县| 保山市| 蛟河市| 德州市| 阳江市| 成都市| 琼海市| 东海县| 寻甸| 加查县| 浙江省| 扶风县| 江西省| 开平市| 建昌县| 新巴尔虎右旗| 五原县| 台东县|