Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program Python untuk menggabungkan dua tatasusunan

Program Python untuk menggabungkan dua tatasusunan

王林
王林ke hadapan
2023-08-18 21:13:202178semak imbas

Program Python untuk menggabungkan dua tatasusunan

Proses penggabungan elemen tatasusunan tertentu dipanggil penggabungan. Operasi ini boleh dilakukan dalam pelbagai cara menggunakan banyak teknik. Mari kita bincangkan semua teknik yang membantu dalam menggabungkan tatasusunan yang diberikan dalam Python. Sebelum memasuki teknik ini, mari kita fahami cara penggabungan tatasusunan berfungsi melalui senario input dan output yang mudah.

Senario input dan output

Pertimbangkan dua tatasusunan arr1 dan arr2.

arr1 = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
arr2 = [ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]

Kini, tatasusunan yang digabungkan ialah tatasusunan terhasil yang diperolehi selepas menggabungkan tatasusunan arr1 dan arr2.

merged_array = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ].

Gunakan pengendali “+”

Operator "+" digunakan untuk penambahan nilai dalam matematik umum. Walau bagaimanapun, dalam kes tatasusunan, penggunaannya berbeza dengan ketara daripada aplikasi lain. Ia boleh digunakan untuk menggabungkan dan menggabungkan tatasusunan yang mengandungi operasi cantum.

Tatabahasa

Sintaks untuk menggabungkan tatasusunan yang diberikan menggunakan operator "+" adalah seperti berikut:

merged_array = arr1 + arr2 + arr3 + arr4 + arr5 + arr6 + arr7 + arr8 + . . . . . . . . . . . . . . . . + arrN

Di sini, arr1, arr2, arr3, arr4, arr5, ..., arrN ialah tatasusunan yang akan digabungkan.

Contoh

Dalam contoh ini, kita akan membincangkan proses penggabungan tatasusunan menggunakan pengendali “ + ”.

arr1 = [1, 2, 3, 4]
arr2 = [5, 6, 7, 8]
arr3 = [9, 10, 11, 12]
arr4 = [13, 14, 15, 16]
arr5 = [17, 18, 19, 20]
arr6 = [21, 22, 23, 24]
arr7 = [25, 26, 27, 28]
merged_array = arr1 + arr2 + arr3 + arr4 + arr5 + arr6 + arr7 
print("The first array is: ")
print(arr1)

print("The second array is: ")
print(arr2)

print("The third array is: ")
print(arr3)

print("The fourth array is: ")
print(arr4)

print("The fifth array is: ")
print(arr5)

print("The sixth array is: ")
print(arr6)

print("The seventh array is: ")
print(arr7)

print("The merged array of the given arrays after performing merge operation: ")
print(merged_array)

Output

Keluaran program di atas adalah seperti berikut:

The first array is: 
[1, 2, 3, 4]
The second array is:
[5, 6, 7, 8]
The third array is:
[9, 10, 11, 12]
The fourth array is:
[13, 14, 15, 16]
The fifth array is:
[17, 18, 19, 20]
The sixth array is:
[21, 22, 23, 24]
The seventh array is:
[25, 26, 27, 28]
The merged array of the given arrays after performing merge operation:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]

Gunakan kaedah "naif" atau "teknik naif"

Teknologi ini bergantung sepenuhnya pada pembolehubah yang diisytiharkan dalam program untuk diproses. Jika terdapat dua tatasusunan yang perlu digabungkan, tatasusunan baharu akan dibuat di mana elemen kedua-dua tatasusunan akan disimpan. Akhir sekali, tatasusunan ini akan dianggap sebagai tatasusunan hasil gabungan.

Begitu juga, jika anda ingin menggabungkan tiga tatasusunan, maka unsur-unsur ketiga-tiga tatasusunan akan disimpan dalam tatasusunan keempat yang baru dibuat. Mari kita bincangkan algoritma yang diikuti oleh teknik ini dan kemudian membina atur cara.

Contoh

Dalam contoh berikut, kita akan membincangkan proses penggabungan dua atau lebih tatasusunan menggunakan kaedah naif.

  • Langkah 1 - Isytiharkan dua atau lebih tatasusunan untuk digabungkan.

  • Langkah 2 - Buat tatasusunan baharu untuk menyimpan elemen tatasusunan awal.

  • Langkah 3 - Ulangi semua elemen tatasusunan awal dan simpan elemen ini ke dalam tatasusunan yang baru dibuat pada masa yang sama.

  • Langkah 4 − Selepas melelakan semua elemen, cetak tatasusunan yang baru dibuat.

def merge_arrays(arr1, arr2, size1, size2, arr3):
   i = 0
   j = 0
   k = 0
   while(i < size1):
      arr3[k] = arr1[i]
      k = k + 1
      i = i + 1
   while(j < size2):
      arr3[k] = arr2[j]
      k = k + 1
      j = j + 1
   arr3.sort()

if __name__ == '__main__':

   arr1 = [1, 3, 5, 7, 9, 11]
   size1 = len(arr1)

   arr2 = [0, 2, 4, 6, 8, 10]
   size2 = len(arr2)
   arr3 = [0 for i in range(size1 + size2)]
   merge_arrays(arr1, arr2, size1, size2, arr3)
   print("The first array before merging is: ")
   print(arr1)
   print("The second array before merging is: ")
   print(arr2)

   print("The array after being merged and sorted: ")
   print(arr3)

Output

Keluaran program di atas adalah seperti berikut:

The first array before merging is: 
[1, 3, 5, 7, 9, 11]
The second array before merging is:
[0, 2, 4, 6, 8, 10]
The array after being merged and sorted:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

Atas ialah kandungan terperinci Program Python untuk menggabungkan dua tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam