Cet article explique comment implémenter l'impression dans le sens des aiguilles d'une montre de matrices et de matrices spirales en PHP.
L'exemple de cet article décrit la méthode d'impression d'une matrice dans le sens des aiguilles d'une montre en PHP. Partagez-le avec tout le monde pour référence, comme suit :
Question
Entrez une matrice et imprimez chaque numéro dans le sens des aiguilles d'une montre de l'extérieur vers l'intérieur. Par exemple, si vous entrez la matrice suivante :
1234
5678
9101112
13141516
puis imprimez les nombres 1,2,3,4,8,12 dans l'ordre ,16,15,14,13,9,5,6,7,11,10.
La solution
est d'imprimer en rond, tant que la boucle est contrôlée Bien.
Faites attention à la situation d'une seule ligne et d'une seule colonne.
Code d'implémentation
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; }
Cet article explique comment implémenter l'impression dans le sens des aiguilles d'une montre des matrices et des matrices spirales en PHP Pour plus de contenu connexe, veuillez faire attention au site Web chinois de PHP.
Recommandations associées :
Apprentissage PHP : détails des variables prédéfinies
Vous apprendre à utiliser le développement PHP pour implémenter WeChat fonction de remboursement
Méthode PHP pour imprimer des arbres binaires en zigzag
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!