php实现二路归并排序
<span> 1</span><span>$arr</span> = [9, 43, 12, 0, 87, 1<span>]; </span><span> 2</span><span>function</span> merge_sort(&<span>$arr</span><span>){ </span><span> 3</span> _merge_sort(<span>$arr</span>, <span>$arr</span>, 0, <span>count</span>(<span>$arr</span>) - 1<span>); </span><span> 4</span><span>} </span><span> 5</span><span> 6</span><span>function</span> _merge_sort(&<span>$s_arr</span>, &<span>$d_arr</span>, <span>$i</span>, <span>$j</span><span>){ </span><span> 7</span><span>if</span>(<span>$i</span> > <span>$j</span><span>){ </span><span> 8</span><span>return</span><span>; </span><span> 9</span><span> } </span><span>10</span><span>if</span>(<span>$i</span> == <span>$j</span><span>){ </span><span>11</span><span>echo</span> 'aa'<span>; </span><span>12</span><span>$d_arr</span>[<span>$i</span>] = <span>$s_arr</span>[<span>$i</span><span>]; </span><span>13</span><span>return</span><span>false</span><span>; </span><span>14</span><span> } </span><span>15</span><span>$tmp_arr</span> = <span>array</span><span>(); </span><span>16</span><span>$m</span> = <span>intval</span>((<span>$i</span> + <span>$j</span>)/2<span>); </span><span>17</span><span>echo</span><span>$m</span><span>; </span><span>18</span><span>if</span>(<span>$i</span> $m<span>){ </span><span>19</span> _merge_sort(<span>$s_arr</span>, <span>$tmp_arr</span>, <span>$i</span>, <span>$m</span><span>); </span><span>20</span><span> } </span><span>21</span><span>if</span>(<span>$m</span>+1 $j<span> ){ </span><span>22</span> _merge_sort(<span>$s_arr</span>, <span>$tmp_arr</span>, <span>$m</span>+1, <span>$j</span><span>); </span><span>23</span><span> } </span><span>24</span> merge(<span>$tmp_arr</span>, <span>$d_arr</span>, <span>$i</span>, <span>$m</span>, <span>$j</span><span>); </span><span>25</span><span>} </span><span>26</span> //$s_arr中的$start到$m与$m到$end两个序列都是有序的,将这两个序列合并到$d_arr里面 <span>27</span><span>function</span> merge(&<span>$s_arr</span>, &<span>$d_arr</span>, <span>$start</span>, <span>$m</span>, <span>$end</span><span>){ </span><span>28</span><span>$i</span> = <span>$start</span>; <span>$j</span> = <span>$m</span>+1;<span>$d_i</span> = <span>$i</span><span>; </span><span>29</span><span>while</span>(<span>$i</span> $m && <span>$j</span> $end<span>){ </span><span>30</span><span>if</span>(<span>$s_arr</span>[<span>$i</span>] > <span>$s_arr</span>[<span>$j</span><span>]){ </span><span>31</span><span>$d_arr</span>[<span>$d_i</span>++] = <span>$s_arr</span>[<span>$i</span>++<span>]; </span><span>32</span><span>//</span><span>$i++;</span><span>33</span> }<span>else</span><span>{ </span><span>34</span><span>$d_arr</span>[<span>$d_i</span>++] = <span>$s_arr</span>[<span>$j</span>++<span>]; </span><span>35</span><span> } </span><span>36</span><span> } </span><span>37</span><span>while</span>(<span>$i</span> $m<span>){ </span><span>38</span><span>$d_arr</span>[<span>$d_i</span>++] = <span>$s_arr</span>[<span>$i</span>++<span>]; </span><span>39</span><span>//</span><span>$i++;</span><span>40</span><span> } </span><span>41</span><span>while</span> (<span>$j</span> $end<span>) { </span><span>42</span><span>$d_arr</span>[<span>$d_i</span>++] = <span>$s_arr</span>[<span>$j</span>++<span>]; </span><span>43</span><span> } </span><span>44</span> }
以上就介绍了php实现二路归并排序,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Uniapp ist ein plattformübergreifendes Entwicklungsframework, mit dem Entwickler schnell und einfach verschiedene Anwendungen entwickeln können. Es ist auch sehr einfach, Drag-and-Drop-Sortierung und Drag-and-Drop-Vorgänge in Uniapp zu implementieren, und es kann Drag-and-Drop-Vorgänge für eine Vielzahl von Komponenten und Elementen unterstützen. In diesem Artikel wird erläutert, wie Sie mit Uniapp Drag-and-Drop-Sortierung und Drag-and-Drop-Vorgänge implementieren, und es werden spezifische Codebeispiele bereitgestellt. Die Drag-and-Drop-Sortierfunktion ist in vielen Anwendungen sehr verbreitet. Sie kann beispielsweise zum Implementieren der Drag-and-Drop-Sortierung von Listen, der Drag-and-Drop-Sortierung von Symbolen usw. verwendet werden. Nachfolgend listen wir auf

Die unterste Ebene der C++-Sortierfunktion verwendet die Zusammenführungssortierung, ihre Komplexität beträgt O(nlogn) und bietet verschiedene Auswahlmöglichkeiten für Sortieralgorithmen, einschließlich schneller Sortierung, Heap-Sortierung und stabiler Sortierung.

Lösung für Docker-Startfehler: 1. Überprüfen Sie den Betriebsstatus und geben Sie dann den belegten Speicher über den Befehl „echo 3 > /proc/sys/vm/drop_caches“ frei. 2. Verwenden Sie „$netstat -nltp|grep ..“. "-Befehl, um zu überprüfen, ob der Port belegt ist. Wenn nach dem Online-Gehen festgestellt wird, dass er belegt ist, ändern Sie ihn in einen verfügbaren Port und starten Sie neu.

Titel: Beispiel für die Verwendung der Array.Sort-Funktion zum Sortieren eines Arrays in C#. Text: In C# ist Array eine häufig verwendete Datenstruktur, und häufig sind Array-Sortiervorgänge erforderlich. C# stellt die Array-Klasse bereit, die über die Sort-Methode verfügt, um Arrays bequem zu sortieren. In diesem Artikel wird gezeigt, wie Sie ein Array mithilfe der Array.Sort-Funktion in C# sortieren, und es werden spezifische Codebeispiele bereitgestellt. Zunächst müssen wir die grundlegende Verwendung der Array.Sort-Funktion verstehen. Array.So

Was ist AMP Coin? Der AMP-Token wurde 2015 vom Synereo-Team als Haupthandelswährung der Synereo-Plattform erstellt. Ziel des AMP-Tokens ist es, Benutzern durch vielfältige Funktionen und Verwendungsmöglichkeiten ein besseres digitales Wirtschaftserlebnis zu bieten. Zweck des AMP-Tokens Der AMP-Token hat mehrere Rollen und Funktionen in der Synereo-Plattform. Erstens können Benutzer im Rahmen des Kryptowährungs-Belohnungssystems der Plattform AMP-Belohnungen verdienen, indem sie Inhalte teilen und bewerben, ein Mechanismus, der Benutzer dazu ermutigt, aktiver an den Aktivitäten der Plattform teilzunehmen. AMP-Tokens können auch zur Bewerbung und Verbreitung von Inhalten auf der Synereo-Plattform verwendet werden. Benutzer können die Sichtbarkeit ihrer Inhalte auf der Plattform erhöhen, indem sie AMP-Tokens verwenden, um mehr Zuschauer zum Ansehen und Teilen zu bewegen

Beim Programmieren in PHP müssen wir häufig Arrays zusammenführen. PHP stellt die Funktion array_merge() bereit, um die Array-Zusammenführung abzuschließen. Wenn jedoch derselbe Schlüssel im Array vorhanden ist, überschreibt diese Funktion den ursprünglichen Wert. Um dieses Problem zu lösen, stellt PHP in der Sprache auch eine Funktion array_merge_recursive() bereit, die Arrays zusammenführen und die Werte derselben Schlüssel beibehalten kann, wodurch das Programmdesign flexibler wird. array_merge

Lösung für den Knotenstartfehler: 1. Führen Sie „node xx.js“ direkt im Terminal aus. 2. Fügen Sie das Startup-Element „scripts“ hinzu: {“test“: „echo \“Fehler: kein Test angegeben\“ && Exit 1“ ,“start“: „node service.js“}“; 3. Führen Sie „npm start“ erneut aus.

Beispiel In diesem Beispiel schauen wir uns zunächst die Verwendung von list.sort() an, bevor wir fortfahren. Hier haben wir eine Liste erstellt und sie mit der Methode sort() in aufsteigender Reihenfolge sortiert - #CreatingaListmyList=["Jacob","Harry","Mark","Anthony"]#DisplayingtheListprint("List=",myList)# SorttheListsinAscendingOrdermyList .sort(
