Bitarray in C++
Ein Bitarray ist eine effiziente Datenstruktur, die eine Folge von Bits speichern und manipulieren kann. Dieser Beitrag zeigt, wie man den Inhalt eines Bitarrays in C++ erstellt, initialisiert, darauf zugreift und druckt.
Bit-Arrays werden normalerweise mit einer Reihe von Bits im Bereich 0-1 initialisiert. Bit-Arrays ähneln anderen Datenstrukturen wie Zeichenfolgen, Vektoren und Listen, da sie sequentielle Daten im Speicher speichern.
Sie haben auch unterschiedliche Datentypen, z. B. vorzeichenlose Ganzzahlen oder Zeichen, die sich darauf auswirken, wie sie im Speicher gespeichert werden und welche Operationen ausgeführt werden können.
Bit-Arrays werden manchmal als Array von Zeigern auf Arrays von char
oder unsigned char
implementiert, wobei jeder Zeiger auf das erste Element (d. h. Bit) eines Arrays zeigt und die Größe durch die Anzahl der darin enthaltenen Elemente gegeben ist dieses Array.
Verwendung von Bitarrays in C++
Bit-Arrays sind eine effiziente Datenstruktur in C++, die es Programmierern ermöglicht, große Datenmengen in einem Array fester Größe zu speichern.
Die primäre Verwendung eines Bitarrays besteht darin, boolesche Werte zu speichern. Bit-Arrays können auch für andere Zwecke verwendet werden, einschließlich zum Speichern von Ganzzahlen, Zeichenfolgen oder Zeigern.
Bit-Arrays werden oft als kompakte Darstellung von Mengen oder Flags verwendet. Da es nur ein Bit pro Speicherstelle aufnehmen kann, ist es nicht sehr effizient zum Speichern großer Datenarrays, da es zu viel Speicher beanspruchen würde.
Schritte zur Verwendung von Bitarrays in C++
Die Schritte zur Verwendung eines Bitarrays in C++ sind wie folgt.
-
Definieren Sie die Größe des Arrays in Bits.
-
Definiert die Anzahl der Elemente im Array.
-
Den Wert aller Bits auf 0 initialisieren.
-
Setzen Sie ein bestimmtes Bit auf 1, indem Sie seinen Index im Array angeben, und setzen Sie dann alle anderen Bits auf Null, indem Sie sie um eine Position verschieben.
-
Fügen Sie ein neues Element an einer beliebigen Position hinzu, indem Sie dieses Bit setzen und alle anderen Bits ausschalten.
Beispiel:
#include <bits/stdc++.h>
#include <stdio.h>
using namespace std;
int main() {
bitset<4> bset1(14);
bitset<4> bset2(7);
cout << (bset1 &= bset2) << endl;
cout << (bset1 ^= bset2) << endl;
return 0;
}
Klicken Sie hier, um die Funktion des Codes wie oben erwähnt zu überprüfen.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook