Inhaltsverzeichnis
Input-Output-Beispiel
Binäre Suche
Beispiel für das Finden eines Schlüssels mithilfe der binären Suche
Frage
Lösung
Algorithmus zum Finden von Kubikwurzeln mithilfe der binären Suche
Beispiel
Ausgabe
Heim Java javaLernprogramm Java-Programm zum Finden der Kubikwurzel einer Zahl mithilfe eines binären Suchalgorithmus

Java-Programm zum Finden der Kubikwurzel einer Zahl mithilfe eines binären Suchalgorithmus

Aug 28, 2023 pm 01:33 PM
java程序 立方根 二分查找

Java-Programm zum Finden der Kubikwurzel einer Zahl mithilfe eines binären Suchalgorithmus

Die Kubikwurzel ist ein ganzzahliger Wert, der dreimal hintereinander mit sich selbst multipliziert den ursprünglichen Wert ergibt. In diesem Artikel schreiben wir ein Java-Programm, das die binäre Suche verwendet, um die Kubikwurzel einer Zahl zu finden. Das Finden der Kubikwurzel einer Zahl ist eine Anwendung des binären Suchalgorithmus. In diesem Artikel besprechen wir ausführlich, wie man die binäre Suche zur Berechnung von Kubikwurzeln verwendet.

Input-Output-Beispiel

Example-1: 
Input: 64 
Output: 4 
Nach dem Login kopieren

Zum Beispiel ist die Kubikwurzel von 64 4 und die Ausgabe ist 4.

Example-2: 
Input: 216
Output: 6  
Nach dem Login kopieren

Zum Beispiel ist die Kubikwurzel von 216 6 und die Ausgabe ist 6.

Binäre Suche

Binäre Suche ist ein Algorithmus zum Suchen von Elementen (d. h. Schlüsseln in einem sortierten Array). Der binäre Algorithmus funktioniert wie folgt

  • Angenommen, das Array ist „arr“. Sortieren Sie ein Array in aufsteigender oder absteigender Reihenfolge.

  • Niedrig = 0 und hoch = n-1 (n = Anzahl der Elemente) initialisieren und Mitte als Mitte = niedrig + (hoch-tief)/2 berechnen. Wenn arr[middle] == key, dann wird middle zurückgegeben, der mittlere Index des Arrays.

  • Wenn der Schlüsselwert kleiner als das arr[middle]-Element ist, setzen Sie den hohen Index auf den mittleren Index -1; wenn der Schlüsselwert größer als das mittlere Element ist, setzen Sie den niedrigen Index auf den mittleren Index +1

  • Fahren Sie mit der binären Suche fort, bis Sie das gesuchte Element gefunden haben.

  • Wenn low größer als high ist, wird direkt false zurückgegeben, da der Schlüsselwert nicht im Array „arr“ vorhanden ist.

Beispiel für das Finden eines Schlüssels mithilfe der binären Suche

Frage

Verwenden Sie bei einem sortierten Array von Ganzzahlen arr = [1, 3, 5, 7, 9, 11] die binäre Suche, um den Index des Elements zu finden, d. h. key = 7.

Lösung

  • Niedrig = 0 und hoch = 5 initialisieren (letzter Index des Arrays).

  • Die erste Iteration der while-Schleife ergibt den Mittelindex mid = low+ (high-low)/2

  • Median = 0+(5-0)/2 = 2.

  • Der Wert von
  • arr[mid] beträgt 5, was weniger als der Schlüsselwert 7 ist. Daher aktualisieren wir niedrig = mittel + 1 = 3.

  • Die zweite Iteration der while-Schleife gibt uns den Mittelindex mid = 4 unter Verwendung von low+ (high-low)/2.

  • Der Wert von
  • arr[mid] ist 9, was größer als der Schlüsselwert 7 ist. Daher aktualisieren wir hoch = 3 (mittel – 1).

  • Die dritte Iteration der while-Schleife gibt uns den Mittelindex mid = 3.

  • arr[mid] ist 7, gleich dem Schlüsselwert. Daher geben wir den mittleren Index zurück, der 3 ist.

  • Im gegebenen Array ist der Index des Schlüssels also 7 und wir haben den Index 3 mithilfe des binären Suchalgorithmus gefunden.

Algorithmus zum Finden von Kubikwurzeln mithilfe der binären Suche

Schritt 1 – Betrachten Sie eine Zahl „n“ und initialisieren Sie low=0 und right=n (die gegebene Zahl).

Schritt 2 – Ermitteln Sie den Median der niedrigen und hohen Werte mithilfe von Mittel = Niedrig + (Hoch-Tief)/2.

Schritt 3 − Finden Sie den Wert von Mitte * Mitte * Mitte. Wenn Mitte * Mitte * Mitte == n, geben Sie den Wert von Mitte zurück.

Schritt 4 – Wenn der mittlere Wert kleiner als n ist, dann ist niedrig=Mittel+1, andernfalls hoch=Mitte-1

Schritt 5 – Wiederholen Sie die Schritte 2 bis 4, bis Sie den Wert gefunden haben.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

In diesem Beispiel verwenden wir den binären Suchalgorithmus, um die Kubikwurzel eines Werts zu finden. Wir haben eine benutzerdefinierte Klasse „BinarySearchCbrt“ erstellt und den binären Suchcode zum Finden der Kubikwurzel einer Zahl in der Funktion „cuberoot“ implementiert. Erstellen Sie nun ein benutzerdefiniertes Klassenobjekt, initialisieren Sie eine Ganzzahlvariable namens „number“ und rufen Sie mithilfe des Klassenobjekts die Funktion „cuberoot“ auf, um so die gewünschte Ausgabe anzuzeigen.

//Java Program to find Cube root of a number using Binary Search
import java.util.*;
class BinarySearchCbrt {
   public  int cuberoot(int number) {
      int low = 0;
      int high = number;
      while (low <= high) {
         int mid = (low + high) / 2;
         int cube = mid * mid*mid;
         if (cube == number) {
            return mid;
         } else if (cube < number) {
            low = mid + 1;
         } else {
            high = mid - 1;
         }
      }
      return 0;
   }
}
public class Main {
   public static void main(String[] args) {
      int n = 64;
      BinarySearchCbrt Obj  = new  BinarySearchCbrt();
      int result= Obj.cuberoot(n);
      System.out.println("Cube root of " + n + " = " + result);
   }
}
Nach dem Login kopieren

Ausgabe

Cube root of 64 = 4 
Nach dem Login kopieren

Zeitkomplexität: O(NlogN) Hilfsraum: O(1)

In diesem Artikel haben wir also besprochen, wie man die Kubikwurzel einer Zahl mithilfe des binären Suchalgorithmus in Java findet.

Das obige ist der detaillierte Inhalt vonJava-Programm zum Finden der Kubikwurzel einer Zahl mithilfe eines binären Suchalgorithmus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Das Java-Programm öffnet die Eingabeaufforderung und fügt den Befehl ein Das Java-Programm öffnet die Eingabeaufforderung und fügt den Befehl ein Aug 19, 2023 pm 12:29 PM

In diesem Artikel werden verschiedene Ansätze zum Auswählen der Befehle verwendet, die über den Java-Code in das geöffnete Befehlsfenster eingefügt werden. Das Befehlsfenster wird mit „cmd“ geöffnet. Hier werden die Methoden dafür mit Java-Code angegeben. Das Befehlsfenster wird zuerst mit dem Java-Programm geöffnet. Iti

Java-Programm, mit dem überprüft wird, ob TPP-Studenten für Vorstellungsgespräche in Frage kommen Java-Programm, mit dem überprüft wird, ob TPP-Studenten für Vorstellungsgespräche in Frage kommen Sep 06, 2023 pm 10:33 PM

Bitte beachten Sie die folgende Tabelle, um die Zulassungskriterien für verschiedene Unternehmen zu kennen. Die chinesische Übersetzung von CGPA lautet: GPA größer oder gleich 8 berechtigte Unternehmen Google, Microsoft, Amazon, Dell, Intel, Wipro größer oder gleich 7 Tutorial-Punkte, Accenture , Infosys, Emicon, Rellins größer oder gleich 6rtCamp, Cybertech, Skybags, Killer, Raymond größer oder gleich 5Patronics, Shoes, NoBrokers Lassen Sie uns das Java-Programm aufrufen, um die Eignung von tpp-Studenten für ein Vorstellungsgespräch zu überprüfen. Methode 1: Verwenden der ifelseif-Bedingung Normalerweise verwenden wir, wenn wir mehrere Bedingungen überprüfen müssen

Java-Programm zum Ermitteln der Größe einer bestimmten Datei in Bytes, Kilobytes und Megabytes Java-Programm zum Ermitteln der Größe einer bestimmten Datei in Bytes, Kilobytes und Megabytes Sep 06, 2023 am 10:13 AM

Die Größe einer Datei ist der Speicherplatz, den eine bestimmte Datei auf einem bestimmten Speichergerät, beispielsweise einer Festplatte, einnimmt. Die Größe einer Datei wird in Bytes gemessen. In diesem Abschnitt besprechen wir, wie man ein Java-Programm implementiert, um die Größe einer bestimmten Datei in Bytes, Kilobytes und Megabytes zu ermitteln. Ein Byte ist die kleinste Einheit digitaler Informationen. Ein Byte entspricht acht Bits. Ein Kilobyte (KB) = 1.024 Byte, ein Megabyte (MB) = 1.024 KB, ein Gigabyte (GB) = 1.024 MB und ein Terabyte (TB) = 1.024 GB. Die Größe einer Datei hängt normalerweise vom Dateityp und der darin enthaltenen Datenmenge ab. Am Beispiel eines Textdokuments kann die Dateigröße nur wenige Kilobyte betragen, während dies bei einer hochauflösenden Bild- oder Videodatei der Fall sein kann

Schreiben Sie ein Java-Programm, um die Fläche und den Umfang eines Rechtecks ​​mithilfe des Klassenkonzepts zu berechnen Schreiben Sie ein Java-Programm, um die Fläche und den Umfang eines Rechtecks ​​mithilfe des Klassenkonzepts zu berechnen Sep 03, 2023 am 11:37 AM

Die Java-Sprache ist heute eine der am häufigsten verwendeten objektorientierten Programmiersprachen der Welt. Das Konzept der Klassen ist eines der wichtigsten Merkmale objektorientierter Sprachen. Eine Klasse ist wie eine Blaupause für ein Objekt. Wenn wir zum Beispiel ein Haus bauen wollen, erstellen wir zunächst einen Bauplan des Hauses, also einen Plan, der zeigt, wie wir das Haus bauen werden. Nach diesem Plan können wir viele Häuser bauen. Ebenso können wir mithilfe von Klassen viele Objekte erstellen. Klassen sind Blaupausen für die Erstellung vieler Objekte, wobei Objekte reale Einheiten wie Autos, Fahrräder, Stifte usw. sind. Eine Klasse hat die Eigenschaften aller Objekte und die Objekte haben die Werte dieser Eigenschaften. In diesem Artikel schreiben wir ein Java-Programm, um den Umfang und die Flächen eines Rechtecks ​​mithilfe des Klassenkonzepts zu ermitteln

Berechnen Sie Zinsen für Festgelder (FDs) und Festgelder (RDs) mithilfe eines geerbten Java-Programms Berechnen Sie Zinsen für Festgelder (FDs) und Festgelder (RDs) mithilfe eines geerbten Java-Programms Aug 20, 2023 pm 10:49 PM

Vererbung ist ein Konzept, das es uns ermöglicht, von einer anderen Klasse auf die Eigenschaften und das Verhalten einer Klasse zuzugreifen. Die Klasse, die Methoden und Mitgliedsvariablen erbt, wird als Superklasse oder übergeordnete Klasse bezeichnet, und die Klasse, die diese Methoden und Mitgliedsvariablen erbt, wird als Unterklasse oder Unterklasse bezeichnet. In Java verwenden wir das Schlüsselwort „extends“, um eine Klasse zu erben. In diesem Artikel besprechen wir ein Java-Programm zur Berechnung von Zinsen für Fest- und Festgelder mittels Erbschaft. Erstellen Sie zunächst diese vier Java-Dateien – Acnt.java – in Ihrer lokalen Computer-IDE. Diese Datei enthält eine abstrakte Klasse „Acnt“, die zum Speichern von Kontodetails wie Zinssatz und Betrag verwendet wird. Es wird auch eine abstrakte Methode „calcIntrst“ mit dem Parameter „amnt“ zur Berechnung geben

So schreiben Sie einen binären Suchalgorithmus mit C# So schreiben Sie einen binären Suchalgorithmus mit C# Sep 19, 2023 pm 12:42 PM

So schreiben Sie mit C# einen binären Suchalgorithmus. Er findet die Position eines bestimmten Elements in einem geordneten Array mit einer Zeitkomplexität von O(logN). In C# können wir mit den folgenden Schritten einen binären Suchalgorithmus schreiben. Schritt 1: Daten vorbereiten Zuerst müssen wir ein sortiertes Array als Zieldaten für die Suche vorbereiten. Angenommen, wir möchten die Position eines bestimmten Elements in einem Array ermitteln. int[]data={1,3,5,7,9,11,13

JAVA-Programm zur Konvertierung römischer Ziffern in ganze Zahlen JAVA-Programm zur Konvertierung römischer Ziffern in ganze Zahlen Aug 25, 2023 am 11:41 AM

Römische Ziffern – Basierend auf dem antiken römischen System, das Symbole zur Darstellung von Zahlen verwendet. Diese Zahlen werden römische Ziffern genannt. Die Symbole sind I, V, X, L, C, D und M, die jeweils 1, 5, 10, 50, 100, 500 und 1.000 darstellen. Ganzzahlen – Eine Ganzzahl ist eine ganze Zahl, die aus positiven, negativen und Nullwerten besteht. Brüche sind keine ganzen Zahlen. Hier legen wir den Symbolwert basierend auf dem ganzzahligen Wert fest. Immer wenn eine römische Zahl als Eingabe angegeben wird, teilen wir sie in Einheiten auf und berechnen dann die entsprechende römische Zahl. I-1II–2III–3IV–4V–5VI–6…X–10XI–11..XV-15 In diesem Artikel erfahren Sie, wie Sie römische Ziffern in Java in ganze Zahlen umwandeln. Zeigen Sie einige Beispiele – Beispiel 1InputR

Java-Programm zum Erstellen von Pyramiden und Mustern Java-Programm zum Erstellen von Pyramiden und Mustern Sep 05, 2023 pm 03:05 PM

Wenn jemand eine solide Grundlage in der Programmiersprache Java erwerben möchte. Dann ist es notwendig zu verstehen, wie die Schleife funktioniert. Darüber hinaus ist das Lösen von Pyramid-Pattern-Problemen die beste Möglichkeit, Ihre Java-Grundkenntnisse zu erweitern, da es den umfassenden Einsatz von for- und while-Schleifen beinhaltet. Ziel dieses Artikels ist es, einige Java-Programme zum Drucken von Pyramidenmustern mithilfe verschiedener in Java verfügbarer Schleifentypen bereitzustellen. Java-Programm zum Erstellen eines Pyramidenmusters Wir werden die folgenden Pyramidenmuster mit einem Java-Programm drucken: Umgekehrte Sternpyramide, Sternpyramide, Zahlenpyramide. Lassen Sie uns dies einzeln besprechen. Modus 1: Die Methode der umgekehrten Sternpyramide deklariert und initialisiert eine Ganzzahl „n“ mit der angegebenen Anzahl von Zeilen. Als nächstes definieren Sie die anfängliche Anzahl des Raums als 0 und die anfängliche Anzahl des Sterns als „n+“.

See all articles