Inhaltsverzeichnis
Einführung in das Problem
Rotation einer bestimmten Zahl
Beispiel
Methode
Zeitliche und räumliche Komplexität
Allgemeine Idee
Fazit
Heim Web-Frontend js-Tutorial JavaScript-Programm zum Überprüfen, ob alle Umdrehungen einer bestimmten Zahl größer oder gleich einer bestimmten Zahl sind

JavaScript-Programm zum Überprüfen, ob alle Umdrehungen einer bestimmten Zahl größer oder gleich einer bestimmten Zahl sind

Sep 08, 2023 pm 05:49 PM

JavaScript 程序检查给定数字的所有旋转是否大于或等于给定数字

In diesem Artikel gehen wir ein JavaScript-Programm durch, um zu prüfen, ob alle Drehungen einer bestimmten Zahl größer oder gleich einer bestimmten Zahl sind. Wir schreiben einen Algorithmus und erklären jeden Schritt, den wir ausführen. Die zeitliche Komplexität der besprochenen Codes wird optimistisch sein, während sich die räumliche Komplexität von einem Code zum anderen verbessern wird.

Einführung in das Problem

In dieser Frage erhalten wir eine Zahl und müssen prüfen, ob jede Drehung größer als die aktuelle Zahl ist, oder wir müssen einfach die Drehung der aktuellen Zahl finden, die kleiner als die aktuelle Zahl ist, und ob eine kleinere Zahl darin enthalten ist Wenn die Drehung erfolgt, geben wir „false“ zurück, andernfalls geben wir „true“ zurück.

Rotation einer bestimmten Zahl

Beispiel

Die Drehung einer bestimmten Zahl kann auf zwei Arten erfolgen: im Uhrzeigersinn oder gegen den Uhrzeigersinn. Im Uhrzeigersinn nehmen wir die letzte Ziffer der Zahl und fügen sie vor der ersten Ziffer hinzu. Zum Beispiel -

var number = 1234 
var last_digit = number%10;
number /= 10;
number = Math.floor(number)
var answer = last_digit.toString() + number.toString();
console.log("The first rotation of the given number is: " + answer)
Nach dem Login kopieren

Im obigen Code wird uns eine Zahl gegeben und wir müssen die erste Drehung der gegebenen Zahl finden. Zuerst speichern wir die letzte Ziffer der aktuellen Zahl in einer anderen Variablen und entfernen dann die letzte Ziffer der gegebenen Zahl, indem wir sie durch 10 dividieren und die Grenze bilden.

Schließlich hängen wir die aktuelle Zahl nach der letzten Zahl an, was uns den ersten Versuch gibt.

Beispiel

Um die nächste Drehung oder die zweite Drehung der aktuellen Zahl zu erhalten, können wir die nächste Drehung der ersten Drehung erhalten, oder wir können dies sogar mit einer anderen Methode tun, die bei jeder Drehung üblich ist. Sehen wir uns das anhand des Codes an -

var number = 1234 
var i = 2
var n_string = number.toString()
var last_i_elements = n_string.substring(n_string.length-i);
var answer = last_i_elements+ n_string.substring(0,n_string.length-i);
console.log("The ith rotation of the given number is: " + answer)
Nach dem Login kopieren

Im obigen Code wird uns eine Zahl gegeben und wir müssen die i-te Drehung der gegebenen Zahl finden. Zuerst speichern wir die letzte „i“-Ziffer der aktuellen Zahl in einer anderen Variablen.

Schließlich hängen wir die aktuelle Zahl an die Zeichenfolge an, die die letzte „i“-Zahl enthält, was uns unseren ersten Versuch ermöglicht.

Die oben besprochene Methode besteht darin, die Zahl im Uhrzeigersinn zu drehen. Für die Drehung gegen den Uhrzeigersinn müssen wir die Zahl von vorne auswählen und am Ende anhängen.

Wenn es keine Angabe gibt, welche Rotation wir wählen müssen, wählen wir im Uhrzeigersinn. Im Beispiel sehen wir also eine Drehung im Uhrzeigersinn.

Methode

Diese Methode ist die Brute-Force-Methode. Bei dieser Methode finden wir jede Drehung einer bestimmten Zahl und überprüfen jede höhere Zahl. Wenn wir eine Zahl finden, die kleiner als die aktuelle Zahl ist, geben wir „false“ zurück, andernfalls geben wir „true“ zurück.

Beispiel

Schauen wir uns zunächst den Code an und gehen dann zur Erklärung des Codes über -

function check(number,i){
   var n_string = number.toString()
   var last_i_elements = n_string.substring(n_string.length-i);
   var answer = last_i_elements+ n_string.substring(0,n_string.length-i);
   if(answer < n_string){
      return false;
   }
   return true;
}

var number = 12345
// checking for every rotation
var ans = true;
for(var i=1;i<number.toString().length;i++){
   ans = check(number,i);
   if(ans == false){
      break;
   }
}
if(ans == true){
   console.log("There is no rotation present which is less then given number")
}
else{
   console.log("There is a rotation of given number present which is less then given number")
}
Nach dem Login kopieren

Im obigen Programm iterieren wir zunächst in einer for-Schleife von 1 bis zur Größe der Zahl minus 1, um jede Drehung von 1 bis zur Größe minus 1 zu erhalten. In jeder Iteration rufen wir eine vordefinierte Funktion auf.

In der Funktion erhalten wir die i-te Drehung, die als Argument an die Funktion übergeben und mit der angegebenen Zahl verglichen wird. Wenn die i-te Rotation kleiner als die angegebene Zahl ist, geben wir als Rückgabewert „false“ zurück, andernfalls geben wir „true“ zurück.

Wir pflegen eine Variable namens Antwort, die die von der Funktion zurückgegebenen wahren und falschen Werte speichert und die Antwort nach Bedarf ausgibt.

Zeitliche und räumliche Komplexität

Im obigen Code haben wir die Funktion check() insgesamt n-mal aufgerufen, wobei n die Größe der angegebenen Zahl ist. Innerhalb der Funktion erstellen wir einen Teilstring, der eine Kopie der angegebenen Zahl ist, und iterieren n-mal, was bedeutet, dass wir ihn n*n-mal verwenden. Daher beträgt die zeitliche Komplexität der gegebenen Funktion O(N*N).

In der Prüffunktion bedeutet dies jedes Mal, dass wir eine Kopie der angegebenen Zahl erstellen, dass wir zusätzliche N Leerzeichen verwenden. Daher ist die Raumkomplexität der gegebenen Funktion O(N).

Allgemeine Idee

Wenn im obigen Code alle Zahlen unterschiedlich sind, können wir die Antwort nur in O(N)-Zeitkomplexität und O(1)-Raumkomplexität erhalten, denn wenn eine Zahl kleiner als die erste Zahl ist, bedeutet dies, dass es eine gibt Es besteht die Möglichkeit, dass die Zahl bei einer exakten Drehung geringer ist als die ursprüngliche Zahl.

Fazit

In diesem Tutorial verwenden wir ein JavaScript-Programm, um zu prüfen, ob alle Drehungen einer bestimmten Zahl größer oder gleich einer bestimmten Zahl sind. Die zeitliche Komplexität des Programms beträgt O(N*N) und die räumliche Komplexität beträgt O(N), wobei N die Größe der gegebenen Zahl ist. Wir haben ein Programm implementiert, mit dem wir jede Drehung einer bestimmten Zahl finden und mit der ursprünglichen Zahl vergleichen können.

Das obige ist der detaillierte Inhalt vonJavaScript-Programm zum Überprüfen, ob alle Umdrehungen einer bestimmten Zahl größer oder gleich einer bestimmten Zahl sind. 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)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen 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)

Ersetzen Sie Stringzeichen in JavaScript Ersetzen Sie Stringzeichen in JavaScript Mar 11, 2025 am 12:07 AM

Detaillierte Erläuterung der Methode für JavaScript -Zeichenfolge und FAQ In diesem Artikel werden zwei Möglichkeiten untersucht, wie String -Zeichen in JavaScript ersetzt werden: Interner JavaScript -Code und interne HTML für Webseiten. Ersetzen Sie die Zeichenfolge im JavaScript -Code Die direkteste Möglichkeit ist die Verwendung der Ersatz () -Methode: str = str.replace ("find", "ersetzen"); Diese Methode ersetzt nur die erste Übereinstimmung. Um alle Übereinstimmungen zu ersetzen, verwenden Sie einen regulären Ausdruck und fügen Sie das globale Flag G hinzu:: STR = Str.Replace (/fi

Benutzerdefinierte Google -Search -API -Setup -Tutorial Benutzerdefinierte Google -Search -API -Setup -Tutorial Mar 04, 2025 am 01:06 AM

Dieses Tutorial zeigt Ihnen, wie Sie eine benutzerdefinierte Google -Such -API in Ihr Blog oder Ihre Website integrieren und ein raffinierteres Sucherlebnis bieten als Standard -WordPress -Themen -Suchfunktionen. Es ist überraschend einfach! Sie können die Suche auf y beschränken

Beispielfarben JSON -Datei Beispielfarben JSON -Datei Mar 03, 2025 am 12:35 AM

Diese Artikelserie wurde Mitte 2017 mit aktuellen Informationen und neuen Beispielen umgeschrieben. In diesem JSON -Beispiel werden wir uns ansehen, wie wir einfache Werte in einer Datei mit JSON -Format speichern können. Mit der Notation des Schlüsselwertpaares können wir jede Art speichern

10 JQuery Syntax Highlighters 10 JQuery Syntax Highlighters Mar 02, 2025 am 12:32 AM

Verbessern Sie Ihre Codepräsentation: 10 Syntax -Hochlichter für Entwickler Das Teilen von Code -Snippets auf Ihrer Website oder Ihrem Blog ist eine gängige Praxis für Entwickler. Die Auswahl des richtigen Syntax -Highlighter kann die Lesbarkeit und die visuelle Anziehungskraft erheblich verbessern. T

Erstellen Sie Ihre eigenen AJAX -Webanwendungen Erstellen Sie Ihre eigenen AJAX -Webanwendungen Mar 09, 2025 am 12:11 AM

Hier sind Sie also bereit, alles über dieses Ding namens Ajax zu lernen. Aber was genau ist das? Der Begriff AJAX bezieht sich auf eine lose Gruppierung von Technologien, mit denen dynamische, interaktive Webinhalte erstellt werden. Der Begriff Ajax, ursprünglich von Jesse J geprägt

8 atemberaubende JQuery -Seiten -Layout -Plugins 8 atemberaubende JQuery -Seiten -Layout -Plugins Mar 06, 2025 am 12:48 AM

Nutzen Sie JQuery für mühelose Webseiten -Layouts: 8 Essential Plugins JQuery vereinfacht das Webseitenlayout erheblich. In diesem Artikel werden acht leistungsstarke JQuery -Plugins hervorgehoben, die den Prozess optimieren, insbesondere nützlich für die manuelle Website -Erstellung

10 JavaScript & JQuery MVC -Tutorials 10 JavaScript & JQuery MVC -Tutorials Mar 02, 2025 am 01:16 AM

Dieser Artikel enthält eine kuratierte Auswahl von über 10 Tutorials zu JavaScript- und JQuery Model-View-Controller-Frameworks (MVC). Diese Tutorials decken eine Reihe von Themen von Foundatio ab

Was ist ' this ' in JavaScript? Was ist ' this ' in JavaScript? Mar 04, 2025 am 01:15 AM

Kernpunkte Dies in JavaScript bezieht sich normalerweise auf ein Objekt, das die Methode "besitzt", aber es hängt davon ab, wie die Funktion aufgerufen wird. Wenn es kein aktuelles Objekt gibt, bezieht sich dies auf das globale Objekt. In einem Webbrowser wird es durch Fenster dargestellt. Wenn Sie eine Funktion aufrufen, wird das globale Objekt beibehalten. Sie können den Kontext mithilfe von Methoden wie CALL (), Apply () und Bind () ändern. Diese Methoden rufen die Funktion mit dem angegebenen Wert und den Parametern auf. JavaScript ist eine hervorragende Programmiersprache. Vor ein paar Jahren war dieser Satz

See all articles