bitset

    4熱度

    2回答

    我有一個使用BitSet的庫,我需要將Set [Int]類型的數據更改爲使用該庫。 想到的是使用.toSeq:_*操作,但我不確定這是從BitSet轉換爲Set [Int]還是其他方式的有效方式。 scala> BitSet(Set(1,2,3).toSeq:_*) res55: scala.collection.immutable.BitSet = BitSet(1, 2, 3) scal

    0熱度

    2回答

    我需要將文件存儲在文件中,並且std::bitset對此很適合,因爲當我再次讀取結構時,我需要很多操作。這個類似乎只包含一些數組,而沒有其他成員數據。 所以不是這個 BYTE minuteOfDay[(60 * 24/CHAR_BIT) + ((60 * 24 % CHAR_BIT) ? 1 : 0)]; 我能有這樣的: std::bitset<60 * 24> minuteOfDay;

    0熱度

    1回答

    我目前正在編寫一個簡單的程序,通過操縱其位值將字符串轉換爲base64。 如果我使用bitset函數將字符串轉換爲位值,我該如何操作或存儲這些值? 例如,如果我這樣做: std::cout << bitset<8>(cstring[i]) << std::endl; 我能打印出所有我想要的二進制值。但我希望能夠操縱這些值。在操作之前是否必須轉換成字符串,還是可以直接操作位。 更具體地說,我想將

    -1熱度

    1回答

    我認爲std::bitset<0> myBS的尺寸應該是0,而std::cout << sizeof(myBS)可以打印出1。任何人都可以解釋我嗎?這是否意味着一個bitset永遠不能爲空?

    0熱度

    1回答

    我創建了一個名爲b的BitSet,並使用java中的此代碼段將它保存到文件中。 byte[] bs = b.toByteArray(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); baos.write(bs); FileOutputStream fr_out = new FileOutputSt

    0熱度

    1回答

    的我需要具有低複雜度的有效方法來改變位集的範圍內的比特的值的值: bitset<1000000> bs; 和例如,我需要將值從100到500設置爲TRUE。 在最低複雜度下完成此操作的最快方法是什麼? 使用循環將不能滿足。

    1熱度

    1回答

    我已經做了一些挖掘,但我沒有找到我的問題的解決方案。我想要一個十進制數字並將其轉換爲位。然後我想分析這些位並確定最高位。例如,8以二進制表示爲1000。最重要的位是在2^4的位置。我發現的最佳解決方案是做類似 int temp=8; bitset<32> binary; binary=temp; int pos; for (int i=32;i>=0;i--){ if (binary[

    1熱度

    1回答

    我已經編寫的解析器,其與在以下類型的格式的文本讀取文本文件中: a r3, r2, r1 ah r8, r5, r6, r7 ai r10, i10, r127 R的數目可以改變和初始字符可以更改。基本上,解析器所做的是基於初始字符(a,ah等),它將定義一個操作碼值,然後解析寄存器號碼並將其轉換爲二進制。它將所有這些值連接在一起以創建一個32位長的二進制指令字符串並將其輸出到文本文件。

    0熱度

    1回答

    我試圖做一個方法,在使用BitSet在Java中環繞左移,但我無法弄清楚如何讓它執行環繞。現在我的方法只是刪除第一位,並保留其餘部分,而不是將第一位添加到最後。 public static BitSet leftShift(int amount, BitSet b){ BitSet bit2 = new BitSet(b.length()); for(int i = b.le

    0熱度

    2回答

    我試圖鍵入別名std::bitset類,其中模板參數N是使用constexpr函數計算的。但是,這種方法似乎正在陷入困境。 的代碼目前看起來是這樣的: static constexpr std::size_t ComponentCount() noexcept { return 3U; } static constexpr std::size_t TagCount() noexce