Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C# Tatasusunan Berbilang Dimensi

C# Tatasusunan Berbilang Dimensi

WBOY
WBOYasal
2024-09-03 15:12:21680semak imbas

Dalam C#, tatasusunan segi empat tepat atau tatasusunan berbilang dimensi merujuk kepada organisasi elemen dalam format matriks. Tatasusunan berbilang dimensi hanya boleh terdiri daripada dua atau tiga dimensi. Dimensi tatasusunan merujuk kepada format organisasi data dalam pembolehubah. Oleh itu, kita boleh mentakrifkan tatasusunan berbilang dimensi sebagai organisasi unsur dalam siri atau jujukan sebagai baris atau lajur.

Sintaks:

Di bawah ialah sintaks   Tatasusunan Berbilang Dimensi:

Pengisytiharan tatasusunan 2D.

int[,] x=new int[1,2];

Pengisytiharan tatasusunan 3D.

int[,,] x=new int[1,2,3];

Sintaks di atas menentukan format untuk mengisytiharkan tatasusunan dua dimensi dan 3 dimensi (x). tatasusunan pertama mengandungi dua elemen, 1 dan 2, manakala tatasusunan tiga dimensi mengandungi elemen 1,2,3.

Pemulaan Tatasusunan Berbilang Dimensi

Susun atur berbilang dimensi boleh dimulakan dalam tiga cara berbeza

1. Pengisytiharan Lengkap

int[,] x = new int[6,6];

Spesifikasi di atas memulakan tatasusunan dua dimensi sepenuhnya, termasuk penggunaan jenis tatasusunan, saiz tatasusunan dan pengendali baharu.

2. Memulakan tanpa Menggunakan Operator Baharu

int[,] x = { { 3,2,1 }, { 6,5,4 }, { 9,8,7 } };

3. Memulakan Tatasusunan tanpa Mengisytiharkan Saiz

int[,] x = new int[,]{ { 3,2,1 }, { 6,5,4 }, { 9,8,7 } };

Contoh tatasusunan berbilang dimensi C#

Di bawah ialah contoh Tatasusunan Berbilang Dimensi dalam C#:

Contoh #1

Program untuk menggambarkan pengisytiharan dan permulaan tatasusunan berbilang dimensi. Contoh di bawah menggambarkan penciptaan tatasusunan berbilang dimensi dalam C#.

Kod:

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();
}
}
}
}

Output:

C# Tatasusunan Berbilang Dimensi

Contoh #2

Program untuk menggambarkan permulaan, pengisytiharan tatasusunan dua dimensi dan akses elemen.

Kod: 

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();
}
}
}

Output:

C# Tatasusunan Berbilang Dimensi

Atur cara di atas menunjukkan penggunaan indeks sebagai penanda kedudukan untuk mengakses elemen tatasusunan dalam tatasusunan berbilang dimensi.

Contoh #3

Program untuk penambahan dua tatasusunan berbilang dimensi.

Kod:

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");
}
}
}
}

Output:

C# Tatasusunan Berbilang Dimensi

Menggunakan atur cara di atas, kami telah menyelesaikan operasi penambahan pada tatasusunan, dengan setiap elemen dalam tatasusunan pertama ditambahkan pada elemen pembilang tatasusunan kedua. Sebagai contoh, elemen pertama dalam tatasusunan1 ialah 1; begitu juga, elemen pertama dalam tatasusunan2  ialah 9. Hasil penambahan hendaklah mengandungi tatasusunan dengan elemen pertama sebagai 10.

Kebaikan & Keburukan

Di bawah ialah kelebihan dan kekurangan Tatasusunan Pelbagai Dimensi:

Kelebihan

  • Tatasusunan berbilang dimensi boleh digunakan untuk menyusun subkumpulan data dalam tatasusunan; tatasusunan berbilang dimensi juga boleh digunakan untuk menyimpan alamat memori data dalam tatasusunan penuding.
  • Dalam atur cara, tatasusunan berbilang dimensi mempunyai saiz statik dan permulaan pada mulanya. Sebarang pelanjutan dalam saiz memerlukan saiz yang berkaitan untuk dinyatakan semasa permulaan.
  • Tatasusunan berbilang dimensi membolehkan melaksanakan operasi matriks dan mengekalkan nilai data yang besar di bawah peruntukan pembolehubah yang sama.
  • Tatasusunan berbilang dimensi digunakan untuk melaksanakan tindanan, timbunan dan Baris Gilir serta jadual cincang.

Keburukan

  • Elemen terletak di lokasi memori bersebelahan untuk tatasusunan; oleh itu sebarang sisipan dan pemadaman elemen hendaklah lebih kompleks daripada operasi serupa pada elemen tunggal.
  • Selain itu, elemen tidak boleh dimasukkan ke tengah tatasusunan.
  • Peruntukan statik boleh menyebabkan pembaziran dan kegagalan untuk melepaskan memori yang tidak digunakan jika ia memperuntukkan lebih banyak memori daripada yang diperlukan. Ini boleh memberi kesan negatif.
  • Tatasusunan berbilang dimensi boleh menjadi lebih perlahan jika dibandingkan dengan tatasusunan satu dimensi mereka, yang merupakan kelemahan utama. Untuk mengatasinya, kita boleh menggantikan tatasusunan bergerigi dengan tatasusunan berbilang dimensi.

Atas ialah kandungan terperinci C# Tatasusunan Berbilang Dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:String Array dalam C#Artikel seterusnya:String Array dalam C#