給定一個字符串,例如'rogerdavis'比它應該將其轉換爲'rogerd @ vis'或'rogerdav!s'或'rogerdavi $'或'rogerd @ v!$'和所有可能的組合並將其追加到文件中。所以基本上必須將'a'轉換爲'@','s'轉換爲'$','i'轉換爲'!'並使用所有可能的組合。這將在Perl中完成。使用Perl獲取所有可能的字符串組合
僞
- 創建一個新的文件
- 計算,A,S中出現的次數,S,I,I(或 我們只能在小或瓶蓋接受關鍵字簡化 開關盒)
- 使用組合公式計算 的可能性的總數對於總數的可能性,我們 執行替換字符
a ->@
,s->$
,i-> I
- 添加唯一進入該文件
這是第一次在什麼來到我的腦海。請幫助我,因爲我知道有必須是一個容易和簡單的方式做這件事情:
- 左起接受關鍵字數組的數組
keyword[ ]
- 計算長度
length_of_keyword
- 掃描陣列
keyword[ ]
右邊 count = 0; 爲(i = 0;我 } 使用數來計算
total_poss =0; r= 1; new_count = count for (i = count; i > 0; i--) { // fact() will calculate factorial total_poss += fact(new_count)/(fact(r)*fact(new_count - r)) r++; } for (k=0; k<total_poss; total_poss++) copy array keyword[ ] in temporary array temp[ ]; for (i=0; i< new_count; i++) { for (j = 0; j< lenght_of_keyword; j++) { if (temp[i] is equal to 'a' || 'A' || 's' || 'S' || 'i' || 'I') { switch (temp[j]) case i: tempt[i] = ! ; if (modified array is equal to an entry in file) continue; else save in file; break; case I: (same as above or we can have function for above code) . .// similarly for all cases . } } }
還有的['edit'](http://stackoverflow.com/posts/ 6995383 /編輯)按鈕就在您的問題標籤下。點擊它來修改你的問題。 – Zaid
問題中的非包裝線有什麼問題?代碼格式是用於代碼,而不是沒有換行符的僞代碼。 – TLP
我knw,但我nt能夠上傳它沒有格式化......反正點是誰都可以幫我出 – Lihos