Persimpangan berarti elemen umum dalam dua set elemen. Jika kita ingin menemukan persimpangan dua array NumPy 1D, kita dapat menggunakan metode numpy.in1d[]
dengan Python. Metode numpy.in1d[]
_ mengambil dua larik, memeriksa apakah setiap elemen dari larik pertama ada di larik kedua, dan mengembalikan larik boolean yang berisi benar untuk setiap elemen yang ada di kedua larik dan salah untuk setiap elemen yang ada di larik pertama tetapi tidak . Kita dapat menggunakan array yang dihasilkan ini sebagai indeks array pertama untuk mendapatkan elemen umum di kedua array
import numpy as np
A = np.array[[2,3,5,7,11]]
B = np.array[[1,3,5,7,9]]
C = A[np.in1d[A, B]]
print[C]
Keluaran
Kami pertama kali membuat dua array dengan metode np.array[]
. Kami kemudian menyimpan persimpangan kedua array di dalam array C
dengan C = A[np.in1d[A, B]]
Persimpangan NumPy Dengan Metode numpy.intersect1d[]
dengan Python
Kami juga dapat menggunakan metode numpy.intersect1d[]
untuk menemukan persimpangan dua array 1D dengan Python. Metode numpy.intersect1d[]
_ mengambil array dan mengembalikan persimpangan yang diurutkan dalam bentuk array 1D lainnya. Lihat contoh kode berikut
import numpy as np
A = np.array[[2,3,5,7,11]]
B = np.array[[1,3,5,7,9]]
C = np.intersect1d[A, B]
print[C]
_Keluaran
Kami menyimpan persimpangan array
import numpy as np
A = np.array[[2,3,5,7,11]]
B = np.array[[1,3,5,7,9]]
C = np.intersect1d[A, B]
print[C]
_1 dan import numpy as np
A = np.array[[2,3,5,7,11]]
B = np.array[[1,3,5,7,9]]
C = np.intersect1d[A, B]
print[C]
2 di dalam array C
dengan metode numpy.intersect1d[]
dalam kode di atas Dua array akan diberikan oleh pengguna dan kita harus menemukan penyatuan dan persimpangan dari array ini dalam pemrograman Python. Untuk menemukan penyatuan dan persimpangan dari array ini, kami akan menggunakan bitwise or [. ] dan bitwise dan [&] masing-masing di antara set array yang diberikan. Sebelum memecahkan masalah ini kita akan belajar tentang serikat dan persimpangan
Penyatuan dan perpotongan dua larik
Daftar yang memiliki kesamaan elemen berbeda dari kedua array dan jika ada pengulangan elemen maka hanya satu kejadian yang dianggap, dikenal sebagai penyatuan kedua array
Daftar yang memiliki elemen umum yang berbeda dari kedua larik, adalah perpotongan kedua larik
Algoritma untuk memecahkan masalah ini
- Awalnya, kami akan mengambil dua daftar dari pengguna yang mungkin memiliki nomor berulang atau tidak
- Kami akan mengambil bitwise atau [. ] antara set kedua array untuk menemukan gabungan dan menugaskannya ke dalam variabel A dalam bentuk daftar
- Untuk menemukan persimpangan dari kedua array, kita akan menggunakan bitwise dan [&] antara set array yang diberikan dan menugaskannya ke dalam variabel B dalam bentuk daftar
- Cetak variabel A dan B yang merupakan keluaran yang kami butuhkan
Mari kita mulai menulis program Python dengan mengimplementasikan algoritma di atas
Kode
a=list[map[int,input['Enter elements of first list:'].split[]]] b=list[map[int,input['Enter elements of second list:'].split[]]] A=list[set[a]|set[b]] B=list[set[a]&set[b]] print['Union of the arrays:',A] print['intersection of the arrays:',B]_
Keluaran
Enter elements of first list: 3 4 6 4 4 6 7 41 Enter elements of second list: 78 3 5 7 -1 9 2 -5 Union of the arrays: [2, 3, 4, 5, 6, 7, 41, 9, 78, -5, -1] intersection of the arrays: [3, 7]
set[] adalah fungsi built-in dalam Python yang digunakan untuk mengonversi daftar menjadi daftar lain yang tidak mengandung elemen duplikat atau berulang
Dalam tutorial ini, kita akan membahas bagaimana kita bisa mendapatkan perpotongan dari kedua daftar tersebut. Persimpangan dua daftar berarti kita perlu mendapatkan semua elemen yang sudah dikenal ke kedua daftar awal
Python dikenal dengan struktur data bawaannya yang luar biasa. Daftar Python adalah salah satu tipe data bawaan Python yang terkenal dan berharga. Itu dapat menyimpan berbagai nilai tipe data dalam urutan yang diurutkan. Namun, tidak ada fungsi bawaan untuk daftar seperti set
Python menyediakan banyak cara untuk melakukan perpotongan daftar. Mari kita lihat skenario berikut
Memasukkan
Keluaran
[90, 11, 58, 31, 66, 28, 54]_
Memasukkan
Keluaran
Mari kita lihat metode berikut untuk menemukan perpotongan dua daftar
Metode - 1. Menggunakan untuk loop
Keluaran
[90, 11, 58, 31, 66, 28, 54]_
Kami telah menggunakan for loop untuk mendapatkan nilai umum dari kedua daftar dan menyimpannya dalam variabel list3
Metode - 2. Konversikan Daftar ke Setel
Keluaran
[66, 90, 11, 54, 58, 28, 31]_
Metode - 3
Kami akan menggunakan metode interseksi[] set bawaan. Interseksi[] adalah bagian kelas satu dari himpunan. Mari kita pahami contoh berikut
Contoh -
Keluaran
{66, 90, 11, 54, 58, 28, 31}_
Metode - 4
Dalam metode ini, kita akan menggunakan metode hybrid. Ini adalah cara yang jauh lebih efisien untuk melakukan tugas. Mari kita pahami contoh berikut
Contoh -
Keluaran
[90, 11, 58, 31, 66, 28, 54]_
Metode - 5
Dalam metode ini, kita akan menggunakan metode filter[]. Persimpangan dilakukan pada sub-daftar di dalam daftar lain. Mari kita pahami contoh berikut
Contoh -
Keluaran
[[17, 23, 40], [10], [60]]
Metode filter[] mengambil setiap item dari sublist dan memeriksa apakah ada di list1. Pemahaman daftar dijalankan untuk setiap subdaftar dalam daftar2