Heim Web-Frontend js-Tutorial Codeanalyse für JavaScript-Rekursion und Schleifenleistungsvergleich

Codeanalyse für JavaScript-Rekursion und Schleifenleistungsvergleich

Jul 26, 2017 pm 05:40 PM
javascript js 对比

In Bezug auf die Leistung hat die Rekursion keinen Vorteil gegenüber Schleifen. Zusätzlich zum Overhead mehrerer Funktionsaufrufe kann die Rekursion in manchen Fällen auch zu unnötigen wiederholten Berechnungen führen. Nehmen wir zum Beispiel ein rekursives Programm, das die Fibonacci-Folge berechnet. Beim Finden des n-ten Elements A(n) wird jedes Element ausgehend vom n-ten Element wiederholt berechnet. Je kleiner die Anzahl der Elemente, desto häufiger wird sie wiederholt. Sei B(i) die Häufigkeit, mit der das i-te Element berechnet wird, dann gibt es

B(i)=1; (i)=B(i +1)+B(i+2); i
Auf diese Weise bildet B(i) eine interessante inverse Fibonacci-Folge. Wenn wir A(n) finden, gilt:

B(i)=A(n+1-i)

Aus einem anderen Blickwinkel betrachtet sei C(i) zu finden A(i) Die Anzahl der erforderlichen Additionen beträgt:

C(i)=0, 1

C(i)=1+C(i-1)+C (i -1); i>1

Sei D(i)=C(i)+1, es gibt

D(i)=1; >
D(i)=D(i-1)+D(i-1)

D(i) bildet also eine weitere Fibonacci-Folge. Und es kann geschlossen werden:

C(n)=A(n+1)-1

Und A(n) wächst in einer geometrischen Reihe, diese redundante Wiederholung in n Es wird ganz erstaunlich, wenn es größer ist. Das entsprechende Programm, das Schleifen verwendet, hat

B(n)=1; n ist ein beliebiger Wert

C(n)=0, 1

C(n). )=n-1; n>1

Daher ist das Programm, das die oben angegebenen Schleifen verwendet, viel schneller als das Programm, das Rekursion verwendet.

Wie bei Schleifen kann auch dieser Fehler bei der Rekursion behoben werden. Wir müssen uns nur die berechneten Terme merken und können bei der Suche nach höheren Termen die vorherigen Terme direkt lesen. Diese Technik ist bei der Rekursion üblich und wird als Auswendiglernen bezeichnet.

Das Folgende ist ein rekursiver Algorithmus zum Finden der Fibonacci-Folge mithilfe der Speichertechnologie.

Das obige ist der detaillierte Inhalt vonCodeanalyse für JavaScript-Rekursion und Schleifenleistungsvergleich. 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ß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)

Ausführlicher Vergleich: Vivox100 oder Vivox100Pro, welches ist den Kauf wert? Ausführlicher Vergleich: Vivox100 oder Vivox100Pro, welches ist den Kauf wert? Mar 22, 2024 pm 02:06 PM

Auf dem heutigen Smartphone-Markt stehen Verbrauchern immer mehr Auswahlmöglichkeiten zur Verfügung. Mit der kontinuierlichen Weiterentwicklung der Technologie haben Mobiltelefonhersteller immer mehr Modelle und Stile auf den Markt gebracht, darunter Vivox100 und Vivox100Pro zweifellos zwei Produkte, die viel Aufmerksamkeit erregt haben. Beide Mobiltelefone stammen von der bekannten Marke Vivox, weisen jedoch gewisse Unterschiede in den Funktionen, der Leistung und dem Preis auf. Welches ist also den Kauf wert? Es gibt offensichtliche Unterschiede im Erscheinungsbild zwischen Vivox100 und Vivox100Pro

Leistungsvergleich Windows 10 vs. Windows 11: Welches ist besser? Leistungsvergleich Windows 10 vs. Windows 11: Welches ist besser? Mar 28, 2024 am 09:00 AM

Leistungsvergleich Windows 10 vs. Windows 11: Welches ist besser? Aufgrund der kontinuierlichen Weiterentwicklung und Weiterentwicklung der Technologie werden Betriebssysteme ständig aktualisiert und aktualisiert. Als einer der weltweit größten Betriebssystementwickler hat Microsoft mit seinen Windows-Betriebssystemen schon immer große Aufmerksamkeit bei den Benutzern auf sich gezogen. Im Jahr 2021 veröffentlichte Microsoft das Betriebssystem Windows 11, was breite Diskussionen und Aufmerksamkeit auslöste. Was ist also der Leistungsunterschied zwischen Windows 10 und Windows 11?

Welches hat mehr Potenzial, SOL-Coin oder BCH-Coin? Was ist der Unterschied zwischen SOL-Coin und BCH-Coin? Welches hat mehr Potenzial, SOL-Coin oder BCH-Coin? Was ist der Unterschied zwischen SOL-Coin und BCH-Coin? Apr 25, 2024 am 09:07 AM

Zu den potenziellen Münzen, die im Währungskreis bevorzugt werden, gehören SOL-Münzen und BCH-Münzen. SOL ist der native Token der Solana-Blockchain-Plattform. BCH ist der Token des BitcoinCash-Projekts, einer Ablegerwährung von Bitcoin. Da sie unterschiedliche technische Eigenschaften, Anwendungsszenarien und Entwicklungsrichtungen aufweisen, ist es für Anleger schwierig, eine Wahl zwischen beiden zu treffen. Ich möchte analysieren, welche Währung mehr Potenzial hat: SOL-Währung oder BCH. Investieren Sie erneut. Der Währungsvergleich erfordert jedoch eine umfassende Analyse anhand des Marktes, der Entwicklungsaussichten, der Projektstärke usw. Als nächstes wird Ihnen der Herausgeber im Detail berichten. Welches hat mehr Potenzial, SOL-Coin oder BCH? Im Vergleich dazu hat die SOL-Münze mehr Potenzial. Zu bestimmen, welche Münze mehr Potenzial hat, die SOL-Münze oder die BCH, ist eine komplizierte Angelegenheit, da sie von vielen Faktoren abhängt.

Empfohlen: Ausgezeichnetes JS-Open-Source-Projekt zur Gesichtserkennung und -erkennung Empfohlen: Ausgezeichnetes JS-Open-Source-Projekt zur Gesichtserkennung und -erkennung Apr 03, 2024 am 11:55 AM

Die Technologie zur Gesichtserkennung und -erkennung ist bereits eine relativ ausgereifte und weit verbreitete Technologie. Derzeit ist JS die am weitesten verbreitete Internetanwendungssprache. Die Implementierung der Gesichtserkennung und -erkennung im Web-Frontend hat im Vergleich zur Back-End-Gesichtserkennung Vor- und Nachteile. Zu den Vorteilen gehören die Reduzierung der Netzwerkinteraktion und die Echtzeiterkennung, was die Wartezeit des Benutzers erheblich verkürzt und das Benutzererlebnis verbessert. Die Nachteile sind: Es ist durch die Größe des Modells begrenzt und auch die Genauigkeit ist begrenzt. Wie implementiert man mit js die Gesichtserkennung im Web? Um die Gesichtserkennung im Web zu implementieren, müssen Sie mit verwandten Programmiersprachen und -technologien wie JavaScript, HTML, CSS, WebRTC usw. vertraut sein. Gleichzeitig müssen Sie auch relevante Technologien für Computer Vision und künstliche Intelligenz beherrschen. Dies ist aufgrund des Designs der Webseite erwähnenswert

Vergleich von Huawei-, ZTE-, Tmall- und Xiaomi-TV-Boxen Vergleich von Huawei-, ZTE-, Tmall- und Xiaomi-TV-Boxen Feb 02, 2024 pm 04:42 PM

Als wichtiges Gerät, das Internet und Fernsehen verbindet, erfreuen sich TV-Boxen in den letzten Jahren immer größerer Beliebtheit. Mit der Beliebtheit von Smart-TVs bevorzugen Verbraucher zunehmend TV-Box-Marken wie Tmall, Xiaomi, ZTE und Huawei. Um den Lesern bei der Auswahl der für sie am besten geeigneten TV-Box zu helfen, bietet dieser Artikel einen ausführlichen Vergleich der Funktionen und Vorteile dieser vier TV-Boxen. 1. Huawei TV Box: Das intelligente audiovisuelle Erlebnis ist ausgezeichnet und bietet ein flüssiges Seherlebnis. Die Huawei TV Box verfügt über einen leistungsstarken Prozessor und hochauflösende Bildqualität. Es unterstützt eine Vielzahl von Audio- und Videoformaten, z. B. Online-Videos und integrierte umfangreiche Anwendungen, Musik und Spiele usw. Die Huawei TV-Box verfügt außerdem über eine Sprachsteuerungsfunktion, die die Bedienung komfortabler macht. Sie können den Inhalt Ihres Mobiltelefons ganz einfach mit einem Klick auf den Fernsehbildschirm übertragen

Vergleichsbewertung von Vivox100 und Vivox100Pro: Welches bevorzugen Sie? Vergleichsbewertung von Vivox100 und Vivox100Pro: Welches bevorzugen Sie? Mar 22, 2024 pm 02:33 PM

Vergleichsbewertung von Vivox100 und Vivox100Pro: Welches bevorzugen Sie? Da Smartphones immer beliebter und leistungsfähiger werden, wächst auch die Nachfrage der Menschen nach Handyzubehör. Als unverzichtbarer Bestandteil von Mobiltelefonzubehör spielen Kopfhörer eine wichtige Rolle im täglichen Leben und bei der Arbeit der Menschen. Unter vielen Kopfhörermarken sind Vivox100 und Vivox100Pro zwei Produkte, die viel Aufmerksamkeit erregt haben. Heute werden wir eine detaillierte Vergleichsbewertung dieser beiden Kopfhörer durchführen, um ihre Vor- und Nachteile zu ermitteln

Leistungsvergleich sowie Vor- und Nachteile der Go-Sprache und anderer Programmiersprachen Leistungsvergleich sowie Vor- und Nachteile der Go-Sprache und anderer Programmiersprachen Mar 07, 2024 pm 12:54 PM

Titel: Leistungsvergleich, Vor- und Nachteile der Go-Sprache und anderer Programmiersprachen. Mit der kontinuierlichen Entwicklung der Computertechnologie wird die Wahl der Programmiersprache immer wichtiger, wobei die Leistung ein wichtiger Aspekt ist. In diesem Artikel wird die Go-Sprache als Beispiel verwendet, um ihre Leistung mit anderen gängigen Programmiersprachen zu vergleichen und deren jeweilige Vor- und Nachteile zu analysieren. 1. Überblick über die Go-Sprache Die Go-Sprache ist eine von Google entwickelte Open-Source-Programmiersprache. Sie zeichnet sich durch schnelle Kompilierung, effiziente Parallelität, Prägnanz und einfache Lesbarkeit aus. Sie eignet sich für die Entwicklung von Netzwerkdiensten, verteilten Systemen und Cloud Computing andere Felder. Gehen

Einfaches JavaScript-Tutorial: So erhalten Sie den HTTP-Statuscode Einfaches JavaScript-Tutorial: So erhalten Sie den HTTP-Statuscode Jan 05, 2024 pm 06:08 PM

JavaScript-Tutorial: So erhalten Sie HTTP-Statuscode. Es sind spezifische Codebeispiele erforderlich. Vorwort: Bei der Webentwicklung ist häufig die Dateninteraktion mit dem Server erforderlich. Bei der Kommunikation mit dem Server müssen wir häufig den zurückgegebenen HTTP-Statuscode abrufen, um festzustellen, ob der Vorgang erfolgreich ist, und die entsprechende Verarbeitung basierend auf verschiedenen Statuscodes durchführen. In diesem Artikel erfahren Sie, wie Sie mit JavaScript HTTP-Statuscodes abrufen und einige praktische Codebeispiele bereitstellen. Verwenden von XMLHttpRequest

See all articles