九章演算法面試題55 旋轉字串

2021-07-02 13:06:51 字數 299 閱讀 5423

給乙個字串和乙個旋轉的偏移量offset,將字串迴圈右移offset位。

如:"abcdefg" 迴圈右移 4位之後變為了:"defgabc"

要求做到o(1)的額外空間耗費,o(n)的時間

採用三步反轉法。

以s="abcdefg"  offset=4為例子

首先將字串看做:"abc"+"defg"

先整體反**得到 "gfed" + "cba"

然後各自反**得到「defg」 + "abc" = "defgabc"

時間複雜度o(n),額外空間複雜度o(1)

九章演算法面試題36 交錯的字串

給定三個字串a,b,c,判斷c是否由a和b交錯構成。交錯構成的意思是,對於字串c,可以將其每個字元標記為a類或b類,使得我a類的每個字元順序構成了a字串,b類的每個字元順序構成了b字串。如 對於a rabbit b mq rabmbitq 是由a和b交錯構成的,但 rabbqbitm 不是由a和b交...

九章演算法 Google 面試題 有效括號字串

撰文 jz 專欄 九章演算法 給定乙個字串,由 三個字元組成,判斷是否滿足要求左括號和有括號一一對應,且對應的左括號必定在右括號前面。其中,可以被當做乙個單獨的左括號,右括號或者可以當做不存在 1.input output true 2.input output true 被當做空字元,不存在 3....

九章演算法 Google面試題 字串解碼

給出乙個表示式 s 此表示式包括數字,字母以及方括號。在方括號前的數字表示方括號內容的重複次數 括號內的內容可以是字串或另乙個表示式 請將這個表示式展開成乙個字串。樣例1 輸入 s abc3 a 輸出 abcaaa 樣例2 輸入 s 3 2 ad 3 pf xyz 輸出 adadpfpfpfadad...