Heim  >  Artikel  >  Backend-Entwicklung  >  Entfernen Sie in C++ ein Bit einer Binärzahl, um den Maximalwert zu erhalten

Entfernen Sie in C++ ein Bit einer Binärzahl, um den Maximalwert zu erhalten

PHPz
PHPznach vorne
2023-09-17 15:53:081128Durchsuche

Entfernen Sie in C++ ein Bit einer Binärzahl, um den Maximalwert zu erhalten

Besprechen Sie ein Problem mit einer Binärzahl. Wir müssen ein wenig davon entfernen, damit die verbleibende Anzahl unter allen anderen Optionen wie

Input : N = 1011
Output: 111
Explanation: We need to remove one bit so removing 0 bit will give a maximum number than removing any 1’s bit. 111 > 101, 011.

Input: 111
Output: 11
Explanation: Since all the bits are 1 so we can remove any bit.

Lösungsmethode

Brute-Force-Methode

Brute-Force-Methode das Maximum sein sollte. Brute-Force-Methode liefert die maximale Anzahl an Ergebnissen, d. h. nach und nach Entfernen Vergleichen Sie verschiedene Ergebnisse und erzielen Sie maximale Ergebnisse.

Aber es kann mit einem effizienten Ansatz erreicht werden, das heißt, wenn wir die minimal redundanten Bits entfernen.

Effiziente Methoden

Effiziente Methoden haben minimale Auswirkungen auf die Ergebnisse.

  • Beginnen Sie zunächst von rechts und gehen Sie die einzelnen Teile durch.

  • Suchen Sie nach 0 und löschen Sie sie im ersten Zähler.

  • Wenn 0 nicht gefunden wird, entfernen Sie alle Bits. ??

Initialisieren Sie das Zeichenarray res, um die Ergebnisnummer zu speichern.

Die Schleife läuft bis n-1, da wir ein Element weniger als die ursprüngliche Zahl speichern müssen.

Die Schleife läuft bis n-1. p>

  • Fazit

    In diesem Tutorial haben wir darüber gesprochen, wie man die maximale Zahl nach dem Entfernen einer Ziffer ermittelt. Wir haben zwei Möglichkeiten zur Lösung dieses Problems besprochen.
  • Wir haben hierfür auch C++-Code geschrieben und können diese Codes in jeder anderen Sprache wie C, Java, Python usw. schreiben. Wir hoffen, dass Sie dieses Tutorial hilfreich fanden.

Das obige ist der detaillierte Inhalt vonEntfernen Sie in C++ ein Bit einer Binärzahl, um den Maximalwert zu erhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen