重構字串

2021-10-23 13:43:46 字數 656 閱讀 6207

給定乙個字串s,檢查是否能重新排布其中的字母,使得兩相鄰的字元不同。

若可行,輸出任意可行的結果。若不可行,返回空字串。

示例1:

輸入: s = 「aab」

輸出: 「aba」

示例 2:

輸入: s = 「aaab」

輸出: 「」

void main()

unordered_map<

int,

int> mp;

int maxlen =0;

for(

int i =

0; i < s.

size()

;++i)

if(maxlen>

(s.size()

+1)/

2)string newstring

(s);

int odd =

0, even =1;

for(

int i =

0; i < mp.

size()

;++i)

while

(mp[i]

>

0&& odd < s.

size()

)}return newstring;}}

;void

main()

重構字串

給定乙個字串s,檢查是否能重新排布其中的字母,使得兩相鄰的字元不同。若可行,輸出任意可行的結果。若不可行,返回空字串。輸入 s aab 輸出 aba 輸入 s aaab 輸出 string reorganizestring string s 判斷是否能夠重構 if h 0 second s.size...

LeetCode 字串 重構字串

給定乙個字串s,檢查是否能重新排布其中的字母,使得兩相鄰的字元不同。若可行,輸出任意可行的結果。若不可行,返回空字串。示例 輸入 s aab 輸出 aba 輸入 s aaab 輸出 說明 假設 s 中有多個 a,則我們想讓字串排成 axaxax 的形式。我們可以先統計每個字元出現的次數,然後利用間隔...

每日演算法 重構字串

給定乙個字串s,檢查是否能重新排布其中的字母,使得兩相鄰的字元不同。若可行,輸出任意可行的結果。若不可行,返回空字串。示例 1 輸入 s aab 輸出 aba 示例 2 輸入 s aaab 輸出 注意 s 只包含小寫字母並且長度在 1,500 區間內。前面返回空的判斷就不加以贅述了,直接說後面的解法...