Selepas mengisytiharkan tatasusunan, elemen tatasusunan sehingga indeks tertentu diputarkan supaya elemen pertama sebelum indeks yang dikehendaki diletakkan bersebelahan elemen terakhir dalam tatasusunan terakhir. Mari kita bincangkan perkara ini melalui senario input-output.
Pertimbangkan tatasusunan arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].
Kita boleh katakan dengan jelas bahawa tatasusunan awal terdiri daripada 10 elemen dan elemen terakhir mempunyai indeks 9.
Katakan tatasusunan diputar oleh dua elemen.
Dalam contoh ini, dua elemen pertama diletakkan selepas elemen terakhir "10".
Pertama, elemen "1" akan diletakkan selepas 10, selepas meletakkan elemen "1", elemen seterusnya "2" akan diletakkan di sebelah 1.
Jadi tatasusunan yang terhasil ialah arr = [3, 4, 5, 6, 7, 8, 9, 10, 1, 2].
Dalam contoh ini, kita akan membincangkan proses memutar elemen tertentu tatasusunan (sekali gus) beberapa kali tertentu. Langkah-langkah yang perlu anda ikuti untuk membina program anda adalah seperti berikut:
Isytiharkan fungsi atau kaedah yang mengendalikan putaran elemen tatasusunan.
(Perhatikan bahawa parameter kaedah ini mesti terdiri daripada tatasusunan, saiz maksimum tatasusunan dan bilangan putaran yang diperlukan oleh pengguna)
Dalam kaedah ini, pertimbangkan tatasusunan baharu dengan nama pembolehubah "temp" untuk menyimpan elemen tatasusunan yang diputar.
Dengan bantuan pembolehubah "i" dan gelung, lelaran elemen tatasusunan (sehingga indeks sama dengan bilangan putaran) dan tambahkan elemen satu demi satu pada tatasusunan "temp".
Pertimbangkan gelung lain dan ulangi elemen dalam indeks seterusnya dan simpannya dengan sewajarnya.
Sekarang, gabungkan tatasusunan " arr " ke dalam tatasusunan " temp " dan simpan nilai itu ke dalam tatasusunan " arr ".
def rotate_elements(arr, max, no_of_elements): temp = [] i = 0 while (i < no_of_elements): temp.append(arr[i]) i += 1 i = 0 while (no_of_elements < max): arr[i] = arr[no_of_elements] i = i + 1 no_of_elements = no_of_elements + 1 arr[:] = arr[: i] + temp return arr arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print("The array before rotation is: ", end =' ') print(arr) print("The array after rotation is: ", end=' ') max_size = len(arr) print(rotate_elements(arr, max_size, 2))
Keluaran program di atas adalah seperti berikut -
The array before rotation is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] The array after rotation is: [3, 4, 5, 6, 7, 8, 9, 10, 1, 2]
Dalam contoh ini, kita akan membincangkan proses memutar elemen tertentu dalam tatasusunan (satu demi satu) beberapa kali. Langkah-langkah yang perlu diikuti untuk membina program adalah seperti berikut -
Isytiharkan dua fungsi. Fungsi pertama akan digunakan untuk lelaran ke atas semua elemen sehingga jumlah putaran, sementara ia memanggil kaedah kedua supaya selepas lelaran ke atas elemen, elemen akan dibenarkan berputar serta-merta.
(Perhatikan bahawa parameter kaedah ini mesti terdiri daripada tatasusunan, saiz maksimum tatasusunan dan bilangan putaran yang diperlukan oleh pengguna)
Dalam kaedah kedua, pertimbangkan tatasusunan kosong dengan pembolehubah bernama "temp" untuk menyimpan elemen tatasusunan yang diputar.
Dengan bantuan pembolehubah " i " dan gelung, ulangi semua elemen dari indeks 0 hingga indeks terakhir elemen terakhir dan putar elemen tatasusunan secara berurutan.
Cetak elemen yang terdapat dalam tatasusunan berputar "arr".
def rotate_elements(arr, no_of_elements, max): for i in range(no_of_elements): rotate_one_by_one(arr, max) def rotate_one_by_one(arr, max): temp = arr[0] for i in range(max-1): arr[i] = arr[i+1] arr[max-1] = temp arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print("The array before rotation: ") print(arr) rotate_elements(arr, 2, 10) print("The array after rotation: ") print(arr)
Keluaran program di atas adalah seperti berikut -
The array before rotation: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] The array after rotation: [3, 4, 5, 6, 7, 8, 9, 10, 1, 2]
Kita dapat melihat dengan jelas bahawa kedua-dua program yang dibincangkan di atas menghasilkan output yang betul-betul sama. Satu-satunya perbezaan antara program ialah proses yang diikuti dan kaedah yang digunakan dalam badan program. Dalam program pertama, dalam satu kaedah, elemen diputar bersama menggunakan tatasusunan luaran. Dalam atur cara kedua, dua kaedah berbeza digunakan untuk memutarkan elemen secara berurutan dengan memanggil kaedah. Ini membolehkan anda memutarkan elemen tatasusunan.
Atas ialah kandungan terperinci Program Python untuk memutar elemen tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!