Rumah Kewangan Peribadi Bagaimana Teknik Quicksort dalam Java Work? - dummies

Bagaimana Teknik Quicksort dalam Java Work? - dummies

Video: Quick Sort dalam Java 2024

Video: Quick Sort dalam Java 2024
Anonim

Di sini, anda mengetahui bagaimana salah satu teknik penyortiran yang paling biasa digunakan di Java sebenarnya berfungsi. Teknik ini dipanggil Quicksort, dan penggunaan rekursion sangat bijak.

Bagi kebanyakan kita, memikirkan bagaimana algoritma pengurutan seperti kerja Quicksort hanyalah latihan intelektual. Java API telah menyusun telah dibina.

Teknik Quicksort menyusun pelbagai nilai dengan menggunakan rekursi. Langkah-langkah asasnya ialah:

  1. Pilih nilai sewenang-wenang yang terletak dalam julat nilai dalam array.

    Nilai ini ialah titik pangsi . Cara yang paling biasa untuk memilih titik pivot ialah memilih nilai pertama dalam array. Orang ramai telah menulis ijazah kedoktoran dengan cara yang lebih canggih untuk memilih titik pivot yang menyebabkan penyisihan lebih cepat. Stick dengan menggunakan elemen pertama dalam array.

  2. Susun semula nilai-nilai dalam array supaya semua nilai yang kurang daripada titik pangsi berada di sebelah kiri array dan semua nilai yang lebih besar atau sama dengan titik pangsi berada di sebelah kanan pelbagai.

    Nilai pangsi menandakan sempadan antara sebelah kiri dan sisi kanan array. Ia mungkin tidak akan mati, tetapi itu tidak penting. Langkah ini dipanggil partitioning, dan sisi kiri dan kanan array itu partition.

  3. Sekarang rawat setiap dua bahagian array sebagai array berasingan, dan mulakan dengan Langkah 1 untuk bahagian itu.

    Itulah sebahagian rekursif algoritma.

Bahagian paling sukar dari algoritma Quicksort adalah langkah pembahagian, yang mesti menyusun semula partition supaya semua nilai yang lebih kecil daripada titik pivot berada di sebelah kiri dan semua elemen yang lebih besar daripada pivot titik di sebelah kanan. Katakan bahawa array mempunyai sepuluh nilai ini:

38 17 58 22 69 31 88 28 86 12

Di sini titik pangsi ialah 38, dan tugas langkah partitioning adalah untuk menyusun semula array kepada sesuatu seperti ini: < 17 12 22 28 31 38 88 69 86 58

Perhatikan bahawa nilai-nilai masih tidak teratur. Arahan itu, bagaimanapun, telah dibahagi di sekitar nilai 38: Semua nilai yang kurang daripada 38 adalah di sebelah kiri 38, dan semua nilai yang lebih besar daripada 38 adalah di sebelah kanan 38.

Sekarang anda boleh membahagikan array menjadi dua partition pada nilai 38 dan ulangi proses untuk setiap sisi. Nilai pivot itu sendiri pergi dengan partition kiri, jadi partition kiri adalah ini:

17 12 22 28 31 38

Kali ini, langkah partitioning memilih 17 sebagai titik pivot dan menyusun semula unsur-unsur seperti berikut: > 12 17 22 28 31 38

Seperti yang anda dapat lihat, bahagian array ini disusun sekarang.Malangnya, Quicksort tidak menyedari bahawa pada masa ini, ia memerlukan lebih banyak rekursi untuk memastikan. Tetapi itulah proses asas.

Bagaimana Teknik Quicksort dalam Java Work? - dummies

Pilihan Editor

Menyesuaikan Invois QuickBooks 2014 dengan Alat Pereka Layout - dummies

Menyesuaikan Invois QuickBooks 2014 dengan Alat Pereka Layout - dummies

Mungkin anda telah menggunakan QuickBooks 2014's Basic Kotak dialog penyesuaian untuk membuat beberapa perubahan pada penampilan invois anda, dan anda belum berpuas hati. Mungkin anda telah melebih-lebihkan batu dan mengamati dengan kotak dialog Penyesuaian Tambahan untuk membuat perubahan selanjutnya, dan mungkin juga yang tidak meninggalkan anda senang dengan rupa invois anda. ...

Nisbah Ekuiti hutang dalam QuickBooks 2012 - dummies

Nisbah Ekuiti hutang dalam QuickBooks 2012 - dummies

Nisbah ekuiti hutang adalah salah satu nisbah leverage yang anda boleh gunakan dalam QuickBooks 2012. Nisbah ekuiti hutang membandingkan hutang jangka panjang syarikat dengan ekuiti pemegang saham atau ekuiti pemilik. Pada asasnya, nisbah ekuiti hutang menyatakan hutang jangka panjang syarikat sebagai peratusan ekuiti pemiliknya. Ekuiti pemegang saham sinonim dengan pemilik ...

Nisbah Ekuiti dalam QuickBooks 2014 - dummies

Nisbah Ekuiti dalam QuickBooks 2014 - dummies

Anda boleh mengesan nisbah ekuiti hutang anda dalam QuickBooks. Nisbah ekuiti hutang membandingkan hutang jangka panjang firma dengan ekuiti pemegang saham atau ekuiti pemilik. Pada asasnya, nisbah ekuiti hutang menyatakan hutang jangka panjang syarikat sebagai peratusan ekuiti pemiliknya. Ekuiti pemegang saham adalah sinonim dengan ekuiti pemilik dan, dalam kes ...

Pilihan Editor

Menambah Kursus ke Profil LinkedIn anda - patung

Menambah Kursus ke Profil LinkedIn anda - patung

Jika anda mengambil kursus satu kali yang tidak menyampaikan sijil atau sebahagian daripada program ijazah yang lebih besar, bahagian Kursus LinkedIn adalah untuk anda. Di samping itu, semakin banyak pelajar menyertai LinkedIn, menyedari peluang besar untuk mencari rangkaian dan pekerjaan. Bahagian Kursus adalah di mana anda menyaksikan kursus terkini ...

10 BerkaitanIn Profil Do dan Larangan - dummies

10 BerkaitanIn Profil Do dan Larangan - dummies

Profil LinkedIn anda adalah identiti digital anda. Dari semua profil media sosial di luar sana, profil LinkedIn adalah yang paling mendalam dan memberikan gambaran menyeluruh anda sebagai seorang profesional. Apabila orang mencari nama anda dalam enjin carian, profil LinkedIn anda sering dikembalikan tinggi dalam hasil carian. Apabila ia datang ...

10 LinkedIn Do dan Larangan - dummies

10 LinkedIn Do dan Larangan - dummies

Rangkaian sosial memerlukan banyak kerja, masa dan usaha . Berikut adalah sepuluh perkara penting dan tidak perlu untuk membantu anda membina hubungan LinkedIn dan mendapatkan nilai yang paling banyak daripada masa anda. Pastikan profil anda lengkap dan terkini Walaupun LinkedIn mempunyai banyak ciri, profil anda masih merupakan salah satu sebab yang paling menarik ...

Pilihan Editor

Percetakan Kebenaran Pengguna dalam QuickBooks 2012 - dummies

Percetakan Kebenaran Pengguna dalam QuickBooks 2012 - dummies

Akauntan sering ingin melihat keizinan pengguna tertentu dalam QuickBooks 2012 Ini benar terutamanya jika anda diaudit oleh CPA anda sebagai sebahagian daripada penutupan tahunan. (Anda mungkin diaudit jika bank mahukan penyata kewangan yang telah diaudit.) QuickBooks 2012 tidak menyediakan cara untuk anda mencetak maklumat yang ditunjukkan ...

Bagaimana Menghasilkan Lembaran Kerja Inventori Fizikal dalam QuickBooks 2017 - dummies

Bagaimana Menghasilkan Lembaran Kerja Inventori Fizikal dalam QuickBooks 2017 - dummies

QuickBooks 2017 melakukan yang cukup baik kerja mengesan inventori, tetapi anda masih perlu kerap mengambil inventori fizikal lengkap tentang apa yang ada dalam stok anda. Kadang-kadang, anda perlu pergi ke segala-galanya dan mengiranya dengan tangan. Maaf. Anda tidak boleh mengelakkan tugas itu. QuickBooks boleh menghasilkan mudah ...

Rasio keuntungan dan QuickBooks 2012 - dummies

Rasio keuntungan dan QuickBooks 2012 - dummies

Nisbah keuntungan menganalisis keuntungan syarikat dan anda boleh menggunakannya dalam QuickBooks 2012. Dalam ertikata, nisbah keuntungan ini adalah nisbah paling penting yang boleh anda kirakan. Mereka biasanya memberikan pandangan berguna yang sangat berguna kepada betapa menguntungkan firma dan mengapa. Sebagai contoh, satu nisbah keuntungan yang penting ialah peratusan margin kasar, ...