Comment detail

逆転したビット列 (Nested Flatten)
BitArrayが微妙に使いにくいですね。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
Function GetReversedBit(ByVal n As Integer) As List(Of UInteger)
    Dim list As New List(Of UInteger)
    For i As UInteger = 0 To CUInt(2 ^ n - 1)
        Dim bitAry As New BitArray(BitConverter.GetBytes(i))
        Dim revAry As New BitArray(bitAry.Count)
        For j As Integer = 0 To n - 1
            revAry(j) = bitAry(n - 1 - j)
        Next
        Dim b(n - 1) As Byte
        revAry.CopyTo(b, 0)
        list.Add(BitConverter.ToUInt32(b, 0))
        If i = UInteger.MaxValue Then Exit For
    Next
    Return list
End Function

Index

Feed

Other

Link

Pathtraq

loading...