Heim  >  Artikel  >  Backend-Entwicklung  >  Eine Erklärung, wie man zwei sortierte verknüpfte Listen in PHP zusammenführt

Eine Erklärung, wie man zwei sortierte verknüpfte Listen in PHP zusammenführt

jacklove
jackloveOriginal
2018-06-30 17:43:061428Durchsuche

In diesem Artikel wird hauptsächlich die Methode zum Zusammenführen zweier sortierter verknüpfter Listen in PHP vorgestellt. Dabei werden die zugehörigen Betriebsfähigkeiten von PHP zum Durchlaufen verknüpfter Listen, zur Beurteilung, zum Sortieren usw. berücksichtigt. Freunde in Not können sich darauf beziehen

Dieser Artikel beschreibt Die Beispiele PHP implementiert die Methode zum Zusammenführen zweier sortierter verknüpfter Listen. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Problem

Geben Sie zwei monoton ansteigende verknüpfte Listen ein und geben Sie das Ergebnis aus Um die beiden verknüpften Listen zu kombinieren, benötigen wir natürlich die synthetisierte verknüpfte Liste, um die monotone, nicht abnehmende Regel zu erfüllen.

Lösung

Einfache Zusammenführungssortierung. Da die beiden Arrays von Natur aus wachsen, nehmen Sie jedes Mal einfach den kleineren Teil der beiden Arrays.

Implementierungscode

<?php
/*class ListNode{
 var $val;
 var $next = NULL;
 function __construct($x){
  $this->val = $x;
 }
}*/
function Merge($pHead1, $pHead2)
{
 if($pHead1 == NULL)
  return $pHead2;
 if($pHead2 == NULL)
  return $pHead1;
 $reHead = new ListNode();
 if($pHead1->val < $pHead2->val){
  $reHead = $pHead1;
  $pHead1 = $pHead1->next;
 }else{
  $reHead = $pHead2;
  $pHead2 = $pHead2->next;
 }
 $p = $reHead;
 while($pHead1&&$pHead2){
  if($pHead1->val <= $pHead2->val){
   $p->next = $pHead1;
   $pHead1 = $pHead1->next;
   $p = $p->next;
  }
  else{
   $p->next = $pHead2;
   $pHead2 = $pHead2->next;
   $p = $p->next;
  }
 }
 if($pHead1 != NULL){
  $p->next = $pHead1;
 }
 if($pHead2 != NULL)
  $p->next = $pHead2;
 return $reHead;
}

Der Artikel könnte Sie interessieren :

Zugehörige Erläuterung der von PHP implementierten MongoDB-Singleton-Modus-Betriebsklasse

Detaillierte Erläuterung der Methode zum Betrieb der MongoDB-Datenbank mit tp5 (denken Sie an PHP5). )

Erklärung der PHP-Klasse SoapClient hat keine Lösung gefunden

Das obige ist der detaillierte Inhalt vonEine Erklärung, wie man zwei sortierte verknüpfte Listen in PHP zusammenführt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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