Re: [問題] 在一個給予的mask中,例舉所有k-bit 組合
謝謝各位大神的建議,我現在可以用到Gosper's Hackw產生我需要的bit組合。
我現在有個更進階的問題。
我想要根據1 bit的count來排例n bits的數字,但不用sorting。
舉例,當n=3時。我希望數字排例如下。當我要讀第4個數字時,我會拿到3。
1, 2, 4, "3", 5, 6, 7
[001, 010, 100, 011, 101, 110, 111]
Code 可能如下。
unsigned x = get_kth_number_by_count_of_1_bits(k /*4*/, numer_of_bits /*3*/);
我現在是用gosper hackw先產生一個look up table。
但我希望可以不用look up table,直接透過bit operation或數學運算,
在constant time,拿到我所要的數字。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.21.176.170 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1707107012.A.8E6.html
※ 編輯: dnol (211.21.176.170 臺灣), 02/05/2024 12:29:34
→
02/05 13:48,
10月前
, 1F
02/05 13:48, 1F
→
02/05 14:09,
10月前
, 2F
02/05 14:09, 2F
→
02/05 15:49,
10月前
, 3F
02/05 15:49, 3F
推
02/06 03:08,
10月前
, 4F
02/06 03:08, 4F
→
02/06 13:42,
10月前
, 5F
02/06 13:42, 5F
推
02/06 16:46,
10月前
, 6F
02/06 16:46, 6F
→
02/06 16:47,
10月前
, 7F
02/06 16:47, 7F
→
02/06 16:48,
10月前
, 8F
02/06 16:48, 8F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章