題目要求
乙個字串有n
位,每一位是0
或者1
,要求按要求輸出所有可能的字串且要求公升序排列。
示例
乙個長度為 3 的字串,按要求應該輸出
000其實思路就是將 0 到 2len - 1 的數字依次用長度為len的二進位制字串表示。001010
011100
101110
111
注意:如果用integer.tobinarystring()
的方法的話,會導致字串長度不夠,比如 n 為 2 的話, 0 轉為 二進位制 就變成 0,而不是要求的 00)
**如下
public
class
hello5
}// 生成指定長度len的所有字串
public
static string[
]generatestr
(int len)
res[i]
= sb.
reverse()
.tostring()
;}return res;
}}
關於堆排序字串按ASCII碼公升序輸出問題
堆排序思路 在篩選sift的過程中,我們不必每乙個結點都要篩選,而是從最後乙個非葉子結點 n 2向上取整 到根結點 1 進行調整生成乙個最大堆。篩選就是從乙個結點a出發,先比較這個結點a的左右孩子b c,如果有比其大的結點,交換假設結點c大,那麼將a結點的值調整為c結點的值,接著以c為結點,繼續向下...
列出給定字串所有的排列組合
問題 給出乙個字串,列出所有字元的組合。例如,xyz 所有排列組合的結果為 xyz,xzy,yxz,yzx,zxy,zyx.邏輯分析 先從第乙個字元起,我們列出後面每個字元可能出現的組合,然後第二個字元,列出其所有可能的組合.依次往後遞推,n個字元的組合數為n 實現 分析 因為在每種組合中字串的每個...
給定乙個字串,輸出所有的排列組合方式
去參加乙個筆試,遇到乙個問題就是給定字串 123456 要我寫程式輸出所有的排列組合方式,當時頭很大,一直想不出來,於是很磋的寫了迴圈。回來了好好想了想,參考網上的資料,今天真正理解並且自己寫了出來。是用遞迴,理解為每次都是求已知的字串與未排列的字串的組合 2011 9 9 author bearf...