سلام.
اول ریشه ی درخت رو میبینیم که هزینه ش چقدر هست. که n2 هست. اون رو به عنوان ریشه میگذاریم.
توی این جا ریشه ۸ تا فرزند T(n2) داره. اون ها رو به عنوان فرزندهاش میگذاریم. توی این سطح هزینه رو حساب میکنیم. هر T(n2) هزینه ش هست (n2)2 پس هزینه ی این سطح میشه ۸ تا n24 و در مجموع هزینه ی این سطح میشه 2n2
توی سطح بعد هر کدوم از فرزندهای سطح قبل ۸ تا فرزند دارند که هر کدوم T(n4) هستند که کلا ۶۴ تا هستند و هزینه ی هر کدوم میشه n216 و در مجموع هزینه ی این سطح میشه 4n2
.
.
همونطور که میبینیم هزینه ی سطوح متفاوت هست.
در صورتی که هزینه ی سطح ها با هم برابر باشه هزینه ی کل برابر میشه با ارتفاع درخت ضربدر هزینه ی یک سطح.
اما در اینجا که هزینه ها یکسان نیست و یک تصاعد هندسی رو تشکیل میده هزینه ها رو با هم جمع میکنیم.
n2+2n2+4n2+8n2+....+2kn2=n2(20+21+22+....+2k)
حالا k ارتفاع درخت هست. چون همون طور که میبینیم توی سطح یک مقدارش برابر با ۱، توی سطح ۲ مقدارش برابر با ۱ و …. هست.
برای به دست آوردن k (ارتفاع درخت):
درخت تا جایی ادامه پیدا میکنه که برسه به برگ ها یعنی T(1) (گاهاََ ممکنه طبق فرضیات T(1) برگ نباشه و T(2) باشه.
حالا باید ببینم که هر سطح از چه قانونی پیروی میکنه و چطور میرسه به برگ.
توی سطح اول داریم: T(n20)
توی سطح دوم داریم: T(n21)
توی سطح سوم داریم: T(n2۲)
…
و به همین ترتیب توی سطح k ام داریم : T(n2k) وقتی که به T(1) برسیم به برگ ها رسیدیم و درخت تا همین جا ادامه پیدا میکنه این k ارتفاع درخت هست.
باید T(n2k)==T(1) که میشه: n2k=1→n=2k→k=logn
پس ارتفاع درخت logn هست. (البته دقیق تر بخوایم بگیم چون تعداد سطوح یکی از ارتفاع بیشتر هست و ما اینجا تعداد سطوح (k) رو به دست آوردیم، ارتفاع درخت logn−1 هست.
همونطور که حساب کردیم هزینه ی مجموع سطوح میشد : n2×∑k=lognk=02k و البته طبق توضیح بالا اگه بخوایم دقیق تر بگیم k حداکثر logn−1 هست.
خب می دونیم: 20+21+....+2logn−1=Σlogn−1k=02k=20×(1−2logn−1+1)1−2=(2logn−1)=θ(2logn)=(2logn2)=n
خب پس مرتبه ی تابع (مجموع هزینه های تمام سطوح) میشه:
n2×Σlogn−1k=02k=n2×n=n3
T(n)=θ(n3)