Skip to content

S4eed3sm/Go-Bitarray

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pure-Golang and memory efficient implementation of bitarray. The array size is limited to 2^64(uint64). Bitwise {And, Or, Xor, Not} functions are supported.

First, initialize a large bitarray string:

var testString string = "11110101010101011110110100010100101010101000001011110010101011101010111110101011111011010001010010101010100000101111001010101110101011111010101111111111010101001010000001101001010100111010101010111010010101001111111111111111111111110101001010101001111111111111001010101001"
b := bitarray.Bitarray{}
b.InitializeByStrValue(testString)
b.Get(0)//returns 1
b.Get(1)//returns 0
b.Get(2)//returns 0
b.Get(3)//returns 1

Compare two bitarray:

b := bitarray.Bitarray{}
b1 := bitarray.Bitarray{}
v := uint64(0b1100010101011001)
b.InitializeByValue(v)
b1.InitializeByValue(v)
b.Compare(b1)//returns true

Bitwise {And, Or, Xor and Not} functions are also be used:

b := bitarray.Bitarray{}
b1 := bitarray.Bitarray{}
b.InitializeByValue(   0b11010011)
b1.InitializeByStrValue("10110010")
*b.And(&b1).ToString()//returns "10010010"
*b.Or(&b1).ToString()//returns "10110010" 

About

Pure-Golang and memory efficient implementation of bitarray.

Topics

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENCE
MIT
LICENSE

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages