Tableaux multidimensionnels C#

WBOY
Libérer: 2024-09-03 15:12:21
original
712 Les gens l'ont consulté

En C#, les tableaux rectangulaires ou tableaux multidimensionnels font référence à l'organisation des éléments dans un format matriciel. Un tableau multidimensionnel ne peut être qu’à deux ou trois dimensions. Les dimensions d'un tableau font référence au format d'organisation des données dans la variable. Ainsi, nous pouvons définir un tableau multidimensionnel comme une organisation d'éléments en série ou en séquence sous forme de lignes ou de colonnes.

Syntaxe :

Vous trouverez ci-dessous la syntaxe des  Tableaux multidimensionnels :

Déclaration du tableau 2D.

int[,] x=new int[1,2];
Copier après la connexion

Déclaration du tableau 3D.

int[,,] x=new int[1,2,3];
Copier après la connexion

La syntaxe ci-dessus spécifie le format pour déclarer les tableaux à deux et trois dimensions (x). le premier tableau contient deux éléments, 1 et 2, tandis que le tableau tridimensionnel contient l'élément 1,2,3.

Initialisation des tableaux multidimensionnels

Un tableau multidimensionnel peut être initialisé de trois manières différentes

1. Déclaration complète

int[,] x = new int[6,6];
Copier après la connexion

La spécification ci-dessus initialise complètement un tableau bidimensionnel, y compris l'utilisation du type de tableau, de la taille du tableau et de l'opérateur new.

2. Initialisation sans utiliser le nouvel opérateur

int[,] x = { { 3,2,1 }, { 6,5,4 }, { 9,8,7 } };
Copier après la connexion

3. Initialiser le tableau sans déclarer la taille

int[,] x = new int[,]{ { 3,2,1 }, { 6,5,4 }, { 9,8,7 } };
Copier après la connexion

Exemples de tableau multidimensionnel C#

Vous trouverez ci-dessous des exemples de tableaux multidimensionnels en C# :

Exemple n°1

Programme pour illustrer la déclaration et l'initialisation d'un tableau multidimensionnel. L'exemple ci-dessous illustre la création d'un tableau multidimensionnel en C#.

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
public static void Main(string[] args)
{
int[,] x = { { 3, 2, 1 }, { 6, 5, 4 }, { 9, 8, 7 } };
for (int a = 0; a < 3; a++)
{
for (int b = 0; b < 3; b++)
{
Console.Write(x[a, b] + " ");
}
Console.WriteLine();
}
}
}
}
Copier après la connexion

Sortie :

Tableaux multidimensionnels C#

Exemple n°2

Programme pour illustrer l'initialisation, la déclaration d'un tableau bidimensionnel et accéder aux éléments.

Code : 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
/* declaring and initialising a two dimensional array*/
int[,] b = new int[6, 2] { { 1, 2 }, { 4, 3 }, { 5, 6 }, { 8,7 }, { 9 , 10 }, { 2, 3 } };
int i, j;
/* accessing each of the elements value for the array */
for (i = 0; i < 6; i++)
{
for (j = 0; j < 2; j++)
{
Console.WriteLine("a[{0},{1}] = {2}", i, j, b[i, j]);
}
}
Console.ReadKey();
}
}
}
Copier après la connexion

Sortie :

Tableaux multidimensionnels C#

Le programme ci-dessus démontre l'utilisation d'indices comme marqueur de position pour accéder aux éléments du tableau dans un tableau multidimensionnel.

Exemple #3

Programme pour l'ajout de deux tableaux multidimensionnels.

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
public static void Main()
{
int[,] array1 = new int[3, 3];
int[,] array2 = new int[3, 3];
int[,] resultArray = new int[3, 3];
int i, j;
Console.WriteLine("specify the members of the first array: ");
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
array1[i, j] = Convert.ToInt32(Console.ReadLine());
}
}
Console.WriteLine("elements of the array1: ");
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
Console.Write("{0} ", array1[i, j]);
}
Console.Write("\n");
}
Console.WriteLine("specify the members of the array2: ");
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
array2[i, j] = Convert.ToInt32(Console.ReadLine());
}
}
Console.WriteLine("elements of the array2: ");
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
Console.Write("{0} ", array2[i, j]);
}
Console.Write("\n");
}
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
resultArray[i, j] = array1[i, j] + array2[i, j];
}
}
Console.WriteLine("resultArray of the array1 and array2 looks as below : ");
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
Console.Write("{0} ", resultArray[i, j]);
}
Console.Write("\n");
}
}
}
}
Copier après la connexion

Sortie :

Tableaux multidimensionnels C#

À l'aide du programme ci-dessus, nous avons terminé l'opération d'addition sur le tableau, avec chaque élément du premier tableau ajouté à l'élément compteur du deuxième tableau. Par exemple, le premier élément du tableau1 est 1 ; de même, le premier élément du tableau 2 est 9. Le résultat de l'addition doit contenir un tableau avec le premier élément égal à 10.

Avantages et Inconvénients

Vous trouverez ci-dessous les avantages et les inconvénients des tableaux multidimensionnels :

Avantages

  • Les tableaux multidimensionnels peuvent être utilisés pour organiser des sous-groupes de données au sein d'un tableau ; les tableaux multidimensionnels peuvent également être utilisés pour stocker des adresses de mémoire de données dans un tableau de pointeurs.
  • Dans le programme, les tableaux multidimensionnels ont une taille et une initialisation statiques au début. Toute extension de taille nécessitera que la taille appropriée soit spécifiée lors de l'initialisation.
  • Les tableaux multidimensionnels permettent d'effectuer des opérations matricielles et de conserver de grandes valeurs de données sous la même allocation de variables.
  • Les tableaux multidimensionnels sont utilisés pour implémenter des piles, des tas, des files d'attente et des tables de hachage.

Inconvénients

  • Les éléments sont situés dans des emplacements mémoire contigus pour un tableau ; par conséquent, toute insertion et suppression d'un élément doit être plus complexe que des opérations similaires sur des éléments uniques.
  • De plus, les éléments ne peuvent pas être insérés au milieu d'un tableau.
  • L'allocation statique peut entraîner un gaspillage et l'échec de la libération de la mémoire inutilisée si elle alloue plus de mémoire que nécessaire. Cela peut avoir un impact négatif.
  • Les tableaux multidimensionnels peuvent être plus lents que leurs homologues unidimensionnels, ce qui constitue un inconvénient majeur. Pour surmonter cela, nous pouvons remplacer les tableaux irréguliers par des tableaux multidimensionnels.

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!

Étiquettes associées:
source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal