題目:題目描述
輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。
輸入描述:
輸入乙個字串,長度不超過9(可能有字元重複),字元只包括大小寫字母。
解法一:
思路:
python 的解法
同解法一的思路相同
class solution:
def permutation(self, ss):
# write code here
out =
if len(ss) == 0:
return out
charlist = list(ss)
self.helper(charlist, 0, out)
out = [''.join(out[i]) for i in range(len(out))]
out.sort()
return out
def helper(self, ss, begin, out):
if begin == len(ss)-1:
else:
for i in range(begin, len(ss)):
if ss[begin] == ss[i] and begin != i:
continue
else:
ss[begin], ss[i] = ss[i], ss[begin]
self.helper(ss, begin+1, out)
ss[begin], ss[i] = ss[i], ss[begin]
牛客網 劍指office 求1 2 2 n
題目 求1 2 3 n,要求不能使用乘除法 for while if else switch case等關鍵字及條件判斷語句 a?b c 解法一 思路 遞迴求和。class solution 解法二 思路 利用建構函式求解。我們先定義乙個類,接著建立n個該型別的例項,那麼這個建構函式將會被呼叫n次,...
牛客網 劍指office 陣列中的逆序對
題目 在陣列中的兩個數字,如果前面乙個數字大於後面的數字,則這兩個數字組成乙個逆序對。輸入乙個陣列,求出這個陣列中的逆序對的總數p。並將p對1000000007取模的結果輸出。即輸出p 1000000007 思路 歸併排序。先將陣列分為若干個長度相等的子陣列,然後在合併子陣列的時候進行排序 並統計逆...
牛客網 字串的統計字串
牛客網 題目描述 給定乙個字串str,返回str的統計字串。例如 aaabbbbcccd 的統計字串為 a 3 b 4 c 3 d 1 輸入字元長度都大於1 解題思路 1.第一種方法輸入的是 aaa n 這種字元。因此我們將當前字元cur指向首字元,從1 字串長度的範圍內開始遍歷判斷當前字元cur是...