Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die Implementierung einer Druckmatrix im Uhrzeigersinn (Spiralmatrix) in PHP

Beispiel für die Implementierung einer Druckmatrix im Uhrzeigersinn (Spiralmatrix) in PHP

韦小宝
韦小宝Original
2018-01-13 11:54:342028Durchsuche

In diesem Artikel wird hauptsächlich die Methode zur Realisierung einer Druckmatrix im Uhrzeigersinn (Spiralmatrix) in PHP vorgestellt, wobei die zugehörigen Betriebsfähigkeiten von PHP basierend auf Array--Durchlauf und Betriebssimulationsdruck zur Realisierung der Spiralmatrixfunktion berücksichtigt werden in PHP Freunde können auf diesen Artikel verweisen.

Das Beispiel in diesem Artikel beschreibt die Methode zum Drucken einer Matrix im Uhrzeigersinn in PHP. Teilen Sie es als Referenz mit allen:

Frage

Geben Sie eine Matrix ein und drucken Sie sie im Uhrzeigersinn von außen aus nach innen. Wenn Sie beispielsweise die folgende Matrix eingeben:

1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16

, dann sind die Zahlen 1,2,3,4,8,12,16,15,14,13 ,9,5 werden der Reihe nach ausgedruckt.

Die Lösung

ist das Drucken im Kreis , solange Sie die Schleifekontrollieren. Das ist alles.
Achten Sie auf die Situation einer einzelnen Zeile und einer einzelnen Spalte.

Implementierungscode

<?php
function printMatrix($matrix)
{
 $row = count($matrix);
 $col = count($matrix[0]);
 if($row == 0 || $col == 0)
  return $matrix;
 $result = array();
 $left = 0;$right = $col-1; $top = 0;$bottom = $row-1;
 while($left<=$right && $top<= $bottom){
  for($i =$left;$i<=$right;++$i){
   array_push($result, $matrix[$top][$i]);
  }
  for($i =$top+1;$i<=$bottom;++$i)
   array_push($result, $matrix[$i][$right]);
  if($top!=$bottom){
   for($i = $right-1;$i>=$left;--$i)
    array_push($result, $matrix[$bottom][$i]);
  }
  if($left!=$right){
   for($i = $bottom-1;$i>$top;--$i)
    array_push($result, $matrix[$i][$left]);
  }
  $left++;$right--;$top++;$bottom--;
 }
 return $result;
}

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er kann jedem beim Lernen helfen! !

Verwandte Empfehlungen:

PHP-Implementierungsmethode zur Bestimmung, ob ein Binärbaum symmetrisch ist

Beispiel dafür, wie PHP eine Codezeile verwendet um alle Dateien in einem Verzeichnis zu löschen

php stringIn Interviews kommt es häufig zu einer Umkehrung

Das obige ist der detaillierte Inhalt vonBeispiel für die Implementierung einer Druckmatrix im Uhrzeigersinn (Spiralmatrix) in PHP. 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