位運算-用法彙總

用位運算表示元素組合

比如給定數組A = [a0, a1, a2, a3, a4]。爲了表示從數組A中選擇任意個元素的組合狀態。組合總和爲2的n次方。可以通過位運算達成。
設 bits = 1 << len(A).用bits中的每i位來代表A[i]是否已選。bits的每一個不同的值代表了一種組合。

這個在求線性列表的組合數裏面非常有用。也可以用bits來表示具體的選擇狀態。參見leetcode 698. 劃分爲k個相等的子集 官方題解的動態規劃算法。就是用到了bits來表達選擇狀態。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章