Saya akan memberikan jawaban yang berbeda, karena terlalu banyak untuk komentar dan itu memperlakukan pendekatan yang lebih umum.
Jadi, dalam ESL, mereka benar-benar menggambarkan waktu perhitungan untuk cabang-dan-terikat (lebih tepatnya itu tampak seperti perpecahan dan taklukkan bagi saya).
Kami menunjukkan dengan jumlah pengamatan dan dengan jumlah simpul anak-anak, ketika kita menanam pohon. Saya berasumsi kita tidak kehilangan secara umum jika kita menganggap diperbaiki. Juga, kita dapat menunjukkan dengan waktu pemrosesan untuk menghitung titik-titik perpecahan pada suatu node.NKKf(N)
Dengan demikian, kita dapat menulis rumus secara rekursif untuk waktu eksekusi seperti:
kita pertimbangkan di sini bahwa node anak membagi data input set ukuran dalam subset ukuran yang sama . Kita tahu bahwa ini adalah kasus terbaik.
T(N)=f(N)+K∗T(N/K)
NKN/K
Namun, kita dapat melihat bahwa ini adalah aplikasi Master Theorem yang sangat terkenal. Ini didokumentasikan dengan baik dalam buku CLRS . Saya memiliki edisi ke-3 dan detailnya ada di bagian 4.5 dan buktinya ada di bagian berikutnya. Saya tidak begitu ingat detailnya, tetapi saya ingat tidak terlalu rumit jika seseorang memperluas rekursi dan mengelompokkan beberapa istilah menjadi satu.
Namun, yang penting untuk kasus ini adalah ketika - waktu linear, waktu yang dihasilkan dari algoritma adalah . Waktu ini dihitung untuk variabel input tunggal, dengan demikian, total waktu kami untuk variabel adalahf(N)=O(N)T(N)=O(NlogN)PO(PNlogN)
Waktu ini dapat dicapai untuk penanaman pohon, jika semua input awalnya disortir dalam , dan menemukan nilai pemisahan membutuhkan waktu linier pada input yang disortir ini. Di sini kita dapat menerapkan algoritma varians on-line, seperti yang saya sebutkan dalam jawaban saya sebelumnya untuk . Untukbahkan lebih mudah untuk menemukan median. Saya akui saya tidak pernah mencoba beberapa fungsi kehilangan lainnya untuk pohon.O(PNlogN)L2=1N(y−y^)2L1=1N|y−y^|
Namun perlu dicatat bahwa Teorema Master berlaku untuk kasus terbaik jika ukurannya sama. Kasus terburuk adalah ketika perpecahan sangat tidak seimbang. Di sana, seseorang dapat menerapkan kasus Master Teorema yang berbeda dan waktunya akan menjadi .O(PN2)
Sebagai kesimpulan saya berasumsi bahwa penulis ESL menggunakan istilah yang biasanya dengan cara yang digunakan untuk menggambarkan algoritma quick-sort. Penyortiran cepat biasanya memberikan waktu berjalan, memiliki kasus terburuk , untuk beberapa pengaturan data tertentu.O(NlogN)O(N2)
Saya harap ini membantu.