Gunakan LINQ untuk mengesahkan perhubungan subset tatasusunan dengan cekap
Dalam pengaturcaraan, selalunya perlu untuk menentukan sama ada tatasusunan ialah subset tatasusunan lain. Ini penting dalam pemprosesan dan analisis data. Artikel ini meneroka kaedah berasaskan LINQ untuk menyemak perhubungan subset tatasusunan dengan cekap.
Mari kita pertimbangkan dua contoh tatasusunan:
<code>List<double> t1 = new List<double> { 1, 3, 5 }; List<double> t2 = new List<double> { 1, 5 };</code>
Matlamat kami adalah untuk menentukan sama ada t2 ialah subset kepada t1. Dengan memanfaatkan kaedah sambungan LINQ yang berkuasa, kami boleh mengesahkan keadaan ini dengan cekap menggunakan kaedah Except()
dan Any()
.
Except()
mengembalikan koleksi baharu yang mengandungi elemen yang terdapat dalam koleksi pertama tetapi tidak dalam koleksi kedua. Oleh itu, menyemak sama ada keputusan t2.Except(t1) ialah set kosong boleh menentukan sama ada semua elemen dalam t2 berada dalam t1.
Gunakan operator logik untuk menafikan keputusan, seperti yang ditunjukkan dalam kod di bawah, untuk menentukan sama ada t2 ialah subset t1.
<code>bool isSubset = !t2.Except(t1).Any();</code>
Dalam contoh yang disediakan, isSubset
akan dinilai sebagai true
, mengesahkan bahawa t2 sememangnya subset t1, kerana semua elemen dalam t2 juga terdapat dalam t1.
Atas ialah kandungan terperinci Adakah Satu Tatasusunan Subset Lain Menggunakan LINQ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!