力扣 791 自定義字串排序 中等

2021-10-03 04:28:56 字數 584 閱讀 9423

字串s和 t 只包含小寫字元。在s中,所有字元只會出現一次。

s 已經根據某種規則進行了排序。我們要根據s中的字元順序對t進行排序。更具體地說,如果s中x在y之前出現,那麼返回的字串中x也應出現在y之前。

返回任意一種符合條件的字串t。

題目很樸素,不是什麼腦筋急轉彎,我的第乙個想法是自定義cmp, 但是發現自定義cmp本質上只是乙個介面,但是介面的內容還是需要自己實現。

後面想到的就是map了,利用現有的可用的有序字元替換需要排序的字元,題目沒有對所有的部分進行排序,部分不要求的。

(想了一下,如果用的是map就算對於不排序部分有要求也不難實現),但是如果需要替換的字元不只是小寫字母就有點麻煩:分為兩種情況,如果s中包含t中的所有字元, 那就依然好實現,或者不是全部包含但是能夠知道t的編碼範圍也可以。

class solution 

for (int i = 0; i < lent; ++i)

sort(t.begin(), t.end());

for(int i = 0; i < lent; ++i)

return t;

}};

791 自定義字串排序

題目描述 字串s和 t 只包含小寫字元。在s中,所有字元只會出現一次。s 已經根據某種規則進行了排序。我們要根據s中的字元順序對t進行排序。更具體地說,如果s中x在y之前出現,那麼返回的字串中x也應出現在y之前。返回任意一種符合條件的字串t。示例 輸入 s cba t abcd 輸出 cbad 解釋...

leetcode 791 自定義字串排序

題目描述 字串s和t只包含小寫字元。在s中,所有字元只會出現一次。s已經根據某種規則進行了排序。我們要根據s中的字元順序對t進行排序。更具體地說,如果s中x在y之前出現,那麼返回的字串中x也應出現在y之前。返回任意一種符合條件的字串t。示例 輸入 s cba t abcd 輸出 cbad 解釋 s中...

LeetCode791 自定義字串排序

sandtare strings composed of lowercase letters.ins,no letter occurs more than once.swas sorted in some custom order previously.we want to permute the ...