H面試程式(27) 字串轉換

2021-06-18 08:18:41 字數 749 閱讀 2174

//1 字串轉換

//問題描述:

//將輸入的字串(字串僅包含小寫字母『a』到『z』),按照如下規則,迴圈轉換後輸出:a->b,b->c,…,y->z,z->a;

//若輸入的字串連續出現兩個字母相同時,後乙個字母需要連續轉換2次。

//例如:aa 轉換為 bc,zz 轉換為 ab;當連續相同字母超過兩個時,第三個出現的字母按第一次出現算。

//要求實現函式:

//void convert(char *input,char* output)

//【輸入】 char *input , 輸入的字串

//【輸出】 char *output ,輸出的字串

//【返回】 無

//40min

//示例

//輸入:char*input="abcd"

//輸出:char*output="bcde"

//輸入:char*input="abbbcd"

//輸出:char*output="bcdcde"

#include#includevoid convert(char *input,char* output)

else //

}else //當前字元和下一字元不相同的情況

else

} }

*output = '\0'; //記得在output後加上結束符號

}int main( )

27 字串的排列

題目 輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。思路 全排列,採用遞迴。1 首先,我們固定第乙個字元a,求後面兩個字元bc的排列 2 當兩個字元bc排列求好之後,我們把第乙個字...

27 字串的排列

題目描述 輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。輸入描述 輸入乙個字串,長度不超過9 可能有字元重複 字元只包括大小寫字母。總結 把字串分為兩部分 1 第乙個字元為一部分,...

27 字串的排列

輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。輸入描述 輸入乙個字串,長度不超過9 可能有字元重複 字元只包括大小寫字母。回溯法 也就是利用樹去嘗試不同的可能性,不斷地去字串陣列裡...