Maison  >  Article  >  développement back-end  >  Programme Python pour échanger des éléments de la diagonale d'une matrice, en utilisant une méthode prédéfinie

Programme Python pour échanger des éléments de la diagonale d'une matrice, en utilisant une méthode prédéfinie

王林
王林avant
2023-08-18 17:37:031808parcourir

La diagonale est l'élément croisé de la matrice.

Une matrice carrée a deux diagonales. L'une est la diagonale principale - du coin supérieur gauche au coin inférieur droit du carré. L'autre est la sous-diagonale - du coin supérieur droit au coin inférieur gauche du carré.

L'échange des diagonales modifie simplement les éléments principaux et sous-diagonaux de la matrice.

Veuillez consulter la scène suivante pour une brève compréhension

Scénarios d'entrée et de sortie

Supposons que nous ayons une matrice carrée. La matrice de sortie sera la matrice de résultat avec ses diagonales permutées.

Input matrix: 
[1, 3, 4]
[4, 5, 6]
[7, 8, 3]
Output matrix: 
[4, 3, 1]
[4, 5, 6]
[3, 8, 7]

Considérons une matrice 4X4.

Input matrix: 
['o', 't', 'l', 'K']
['v', 'P', 's', 'm']
['E', 's', 'X', 'c']
['e', 'p', 'O', 'j']

Output matrix: 
['K', 't', 'l', 'o']
['v', 's', 'P', 'm']
['E', 's', 'X', 'c']
['j', 'p', 'O', 'e']

Utilisation des méthodes de liste Python

En Python, les méthodes index(), pop(), insert() et append() sont toutes des méthodes de liste. Et ici, la matrice est créée en utilisant une liste de listes afin que nous puissions utiliser ces méthodes de liste pour échanger les diagonales.

  • index() - La méthode index() renvoie la position de la première occurrence d'une valeur donnée.

  • pop() - La méthode pop supprimera l'élément à la position spécifiée. Par défaut, il supprime le dernier élément.

  • insert() - Cette méthode peut être utilisée pour insérer des éléments à n'importe quelle position. Cette méthode accepte deux paramètres, l'un est l'élément à insérer et l'autre est l'index de la position à insérer.

  • La méthode
  • append() est utilisée pour ajouter un élément à la fin de la liste.

Exemple

Dans cet exemple, la fonction display() imprimera la matrice donnée. Et la fonction ExchangeDiagonals() échangera des éléments.

#function for displaying matrix
def display(matrix):
   for row in matrix:
      print(row)
   print()

# interchanging the diagonals elements
def interchangeDiagonals(matrix):
   for row in matrix:
      if matrix.index(row) != len(matrix) // 2:
         temp1 = row[-1]
         temp2 = row[0]
         row.pop()
         row.pop(0)
         row.insert(0, temp1)
         row.append(temp2)
   return matrix

# input matrix
matrix = [[1, 3, 4], [4, 5, 6], [7, 8, 3]]

# displaying original matrix
print("Original matrix: ")
display(matrix) 

# displaying changed matrix
print("Changed matrix: ")
display(interchangeDiagonals(matrix))

Sortie

Original matrix: 
[1, 3, 4]
[4, 5, 6]
[7, 8, 3]

Changed matrix: 
[4, 3, 1]
[4, 5, 6]
[3, 8, 7]

En utilisant la méthode de liste Python, nous avons réussi à échanger les éléments diagonaux de la matrice donnée.

Remarque− La méthode ci-dessus ne fonctionne que pour les matrices 3X3.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer