Python mengurutkan daftar berdasarkan daftar
Pada artikel ini, kita akan mempelajari cara mengurutkan daftar apa pun, menurut elemen kedua dari sublist yang ada di dalam daftar utama. Kita akan melihat dua metode untuk melakukan ini. Kita akan mempelajari tiga metode untuk melakukan hal semacam ini. Satu dengan menggunakan Bubble Sort, kedua dengan menggunakan metode sort() dan yang terakhir dengan menggunakan metode sortir(). Dalam program ini, kami telah mengurutkan daftar dalam urutan menaik. Contoh Show
Input : [['rishav', 10], ['akash', 5], ['ram', 20], ['gaurav', 15]] Output : [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]] Input : [['452', 10], ['256', 5], ['100', 20], ['135', 15]] Output : [['256', 5], ['452', 10], ['135', 15], ['100', 20]] Direkomendasikan. Harap coba pendekatan Anda pada {IDE} terlebih dahulu, sebelum melanjutkan ke solusiMetode 1. Menggunakan Teknik Bubble Sort Di sini kita telah menggunakan teknik Bubble Sort untuk melakukan sortasi. Kami telah mencoba mengakses elemen kedua dari sublist menggunakan loop bersarang. Ini melakukan metode penyortiran di tempat. Kompleksitas waktunya mirip dengan Bubble Sort i. e. , O(n^2) Python3
________ 105 _______ ________ 106 _______
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]2 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]7 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]8 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]9 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]2 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]4 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]7 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]8 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]9 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]9 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6________1______0________1___1____3_______ [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]7 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]9 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]2 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]4 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]8 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]8 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 # Python code to sort the lists using the second element of sublists 2[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 # Python code to sort the lists using the second element of sublists 5[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 # Python code to sort the lists using the second element of sublists 2[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]0 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 # Python code to sort the lists using the second element of sublists 5[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 # Inplace way to sort, use of third variable 9def 0def 1def 2def 3def 4def 1def 6def 3def 8def 1Sort(sub_li): 0def 3Sort(sub_li): 2def 1Sort(sub_li): 4Sort(sub_li): 5
Keluaran [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_ Kompleksitas Waktu. O(n*n), di mana n adalah panjang dari sub_li yang diberikan Metode 2. Menyortir dengan menggunakan metode sort() Saat menyortir melalui metode ini, konten sebenarnya dari tuple diubah, dan seperti metode sebelumnya, metode sortir di tempat dilakukan. Python3
________ 105 _______ ________ 106 _______
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]01 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]02 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]04
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 # Inplace way to sort, use of third variable 9def 0def 1def 2def 3def 4def 1def 6def 3def 8def 1Sort(sub_li): 0def 3Sort(sub_li): 2def 1Sort(sub_li): 4Sort(sub_li): 5
Keluaran [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_ Kompleksitas waktu. O(masuk) Metode 3. Menyortir dengan menggunakan metode sortir() Sorted() mengurutkan daftar dan selalu mengembalikan daftar dengan elemen dengan cara diurutkan, tanpa mengubah urutan aslinya. Dibutuhkan tiga parameter dari mana dua adalah opsional, di sini kami mencoba menggunakan ketiganya
Python3
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_31 ________ 105 _______ ________ 106 _______
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]9 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]43 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]44 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]01 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]02 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]49
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 # Inplace way to sort, use of third variable 9def 0def 1def 2def 3def 4def 1def 6def 3def 8def 1Sort(sub_li): 0def 3Sort(sub_li): 2def 1Sort(sub_li): 4Sort(sub_li): 5
Keluaran [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_ Metode 4. Gunakan perintahDIct Python3[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_72 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]73 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]74 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]75
________ 105 _______ ________ 106 _______
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_79
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]81 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]83
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]7 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]88 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]2 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]90 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]3 Sort(sub_li): 5[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]6
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_97
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]99 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]43 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]02
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_04
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]06 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]08 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]5 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]10 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]7 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]12
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]06 [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_17
[['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]1 # Inplace way to sort, use of third variable 9def 0def 1def 2def 3def 4def 1def 6def 3def 8def 1Sort(sub_li): 0def 3Sort(sub_li): 2def 1Sort(sub_li): 4Sort(sub_li): 5
Keluaran [['akash', 5], ['rishav', 10], ['gaurav', 15], ['ram', 20]]_ Pendekatan ini mengimplementasikan kamus terurut yang menyimpan elemen sublist sebagai pasangan kunci-nilai. Kamus kemudian diurutkan berdasarkan kunci dan daftar dikembalikan dengan elemen yang diurutkan menurut elemen kedua dalam subdaftar Bagaimana cara mengurutkan daftar berdasarkan daftar lain?Pendekatan. . Zip kedua daftar Buat daftar baru yang diurutkan berdasarkan zip menggunakan sortir() Dengan menggunakan pemahaman daftar, ekstrak elemen pertama dari setiap pasangan dari daftar yang diurutkan dan di-zip Bagaimana Anda mengurutkan dua daftar dengan Python?Sortir dan Gabungkan Dua Daftar menggunakan Metode sort() . Tentukan dua variabel untuk menetapkan daftar kosong Sekarang ambil jumlah input untuk daftar pertama dan kedua Sekarang gabungkan kedua daftar menggunakan operator '+' Gunakan metode sort() bawaan untuk mengurutkan daftar yang baru dibuat Bagaimana Anda mengurutkan daftar dengan daftar bersarang di Python?Karena kami telah memberikan nomor indeks "1", daftar bersarang kami akan diurutkan berdasarkan elemen kedua dari daftar bersarang. . def Sortir(Daftar). Daftar. urutkan(kunci=lambda l. aku[1]). def Sortir(DaftarKu). return (diurutkan(MyList, key=lambda i. saya[0])). ListIs = [('Pink'), ('Green'), ('Blue'), ('Orange')] ListIs Bagaimana Anda mengurutkan sublist dengan Python?Pendekatan lain untuk mengurutkan sublist dalam daftar string adalah menggunakan fungsi sortir bawaan dan pemahaman daftar . Metode ini melibatkan iterasi pada setiap sublist dalam daftar dan mengurutkannya menggunakan fungsi sortir, kemudian mengembalikan sublist yang telah diurutkan ke dalam daftar baru menggunakan pemahaman daftar. |