বাইনারি গাছের গড় উচ্চতা কত?


10

বাইনারি গাছের গড় উচ্চতা সম্পর্কে কোনও আনুষ্ঠানিক সংজ্ঞা আছে কি?

নিম্নলিখিত দুটি পদ্ধতি ব্যবহার করে বাইনারি গাছের গড় উচ্চতা নির্ধারণ সম্পর্কে আমার টিউটোরিয়াল প্রশ্ন রয়েছে:

  1. প্রাকৃতিক সমাধানটি মূল থেকে কোনও পাতায় সমস্ত সম্ভাব্য পাথের গড় দৈর্ঘ্য গ্রহণ করা হতে পারে take

    avh1(T)=1# leaves in Tv leaf of টিগভীরতা(বনাম)

  2. অন্য বিকল্পটি এটি পুনরাবৃত্তভাবে সংজ্ঞায়িত করা হয়, এটি হ'ল নোডের গড় উচ্চতা হল সাবট্রিজ প্লাস একের গড় উচ্চতার ওপরে গড়

    avh2(N(,R))=avh2()+ +avh2(R)2+ +1

    খালি স্লটের জন্য পাতার জন্য ও সাথে ।avh2()=1avh2(: _)=0

আমার বর্তমান বোঝার উপর ভিত্তি করে, উদাহরণস্বরূপ, গাছ এর গড় উচ্চতাটি

    1    
   / \
  2   3
 /
4

হয় দ্বিতীয় পদ্ধতি, যে recursion ব্যবহার করছে দ্বারা।avh2(টি)=1.25

তবে, প্রথমটি কীভাবে করা যায় তা এখনও আমি পুরোপুরি বুঝতে পারি না। সঠিক নয়।avh1(টি)=(1+ +2)/2=1.5


1
আপনি কিছু প্রসঙ্গ সরবরাহ করতে পারেন? "সঠিক" গাণিতিক সংজ্ঞা বলে কিছু নেই; আপনার পছন্দ অনুযায়ী আপনি "বাইনারি গাছের গড় উচ্চতা" নির্ধারণ করতে পারেন। (গড় কি উপর কি বন্টন ?) কিন্তু ভিন্ন সংজ্ঞা বেশী বা কম হবে দরকারী বিভিন্ন অ্যাপ্লিকেশনের জন্য।
জেফই

@ জেফি "বাইনারি গাছের গড় উচ্চতা কীভাবে নির্ধারণ করা যায় তা অবিলম্বে সুস্পষ্ট নয়। সম্ভবত সবচেয়ে প্রাকৃতিক সমাধানটি সম্ভবত একটি মূল থেকে শুরু করে কোনও পাতা পর্যন্ত সম্ভাব্য পথগুলির গড় দৈর্ঘ্য থাকতে পারে। একটি সরল (সম্ভবত এমনকি সরল) সমাধানও হতে পারে বলতে গেলে কোনও নোডের গড় উচ্চতা সাবট্রি প্লাস একের গড় উচ্চতার ওপরে গড়? এই বিকল্পটি কোড করা আপনার পক্ষে সহজ মনে হয় difference পার্থক্যটি প্রদর্শনের জন্য আপনি উদাহরণ দিতে পারেন? "
সময়হীন

আমি দুটি ভেরিয়েন্টের সুনির্দিষ্ট সংজ্ঞা দিয়ে আপনার পোস্টটি আরও পরিষ্কার করার চেষ্টা করেছি। দয়া করে পরীক্ষা করুন যে আমি আপনার পাঠ্যটি সঠিকভাবে ব্যাখ্যা করেছি। বিশেষত, আপনি দ্বিতীয় বৈকল্পিকের জন্য অ্যাঙ্করটি হারিয়েছিলেন; আপনি পাতাগুলি এক বা উচ্চতা বা শূন্যের তুলনায় নিতে পার্থক্য রাখে।
রাফেল

উত্তর:


3

উভয় সংজ্ঞা একই পরিমাপকে বর্ণনা করে বলে বিশ্বাস করার কোনও কারণ নেই। আপনি পুনরাবৃত্তভাবে লিখতে পারেন :avh1

avh1(এন(,R))=LV()(একটিবনাম1()+ +1)+ +LV(R)(একটিবনাম1(R)+ +1)LV()+ +LV(R)

সঙ্গে পাতার জন্য । আপনি যদি বিশ্বাস করেন না যে এটি একই, ডান হাতের এএইচ 1 এর সংজ্ঞাটি উন্মোচন করুন, বা আনয়ন প্রমাণ করুন।avh1()=0avh1

এখন আমরা দেখতে পেলাম যে অ্যাভ 2 থেকে সম্পূর্ণ আলাদাভাবে কাজ করে । যদিও অ্যাভিএইচ 2 কোনও নোডের বাচ্চাদের পুনরাবৃত্ত উচ্চতার ওজনকে সমানভাবে ওজন করে (দুটি যোগ করে এবং বিভাজন করে), এহহ 1 তাদের ধারণকৃত পাতার সংখ্যা অনুযায়ী তাদের ওজন করে। সুতরাং তারা পাতার ভারসাম্যযুক্ত গাছগুলির জন্য একই (মডেলো অ্যাঙ্কর), এটি ভারসাম্যপূর্ণ অর্থে যে ভাইবোন গাছগুলি সমানভাবে অনেকগুলি পাতা রয়েছে। যদি আপনি lv ( l ) = lv ( r ) দিয়ে অ্যাভ 1 এর পুনরাবৃত্ত আকারটি সহজ করেনavh1avh2avh2avh1avh1LV()=LV(R)এটি অবিলম্বে স্পষ্ট হয়। ভারসাম্যহীন গাছে এগুলি আলাদা।

আপনার গণনা সত্যই সঠিক (আপনার সংজ্ঞা দেওয়া হয়েছে); নোট করুন যে গাছ গাছ পাতা-ভারসাম্যহীন নয়।


এটি কি জন্য বাস্তবায়ন কোডটি দেখানো সম্ভব , কীভাবে এটি পুনরাবৃত্তভাবে করা যায় তা আমি যথেষ্ট ধারণা পাই নাavh1
সময়হীন

avh1

আমি পুনরাবৃত্তি ব্যবহার করে বাস্তবায়ন কোডটি বোঝাতে চাইছি
সময়হীন

@ নুল: আপনি বেস কেসটি অন্তর্ভুক্ত করলে আপনি প্রায় আক্ষরিকভাবে সূত্রটি অনুলিপি করতে পারেন । কীভাবে এটি করা যায় তা আপনার প্রোগ্রামিং ভাষা এবং গাছ প্রয়োগের উপর নির্ভর করে। আমি আপনাকে পরামর্শ দিচ্ছি যে বাস্তবায়ন যদি আপনার জন্য বাধা হয়ে থাকে তবে আপনি স্ট্যাক ওভারফ্লোতে পুনরাবৃত্তিটি গ্রহণ করুন ।
রাফেল

2

সম্পাদনা: জেফ উপরের মন্তব্যে একটি ভাল বক্তব্য রাখে। নিম্নলিখিত উত্তরটিতে সম্ভবত "সুবিধাজনক / ধারাবাহিক বনাম অসঙ্গতি" হিসাবে আপনার পড়া উচিত should

দেখে মনে হচ্ছে আপনার দ্বিতীয় গণনাটি ভুল। একটি একক নোড (অর্থাত্ একটি পাত) দিয়ে সাবট্রির উচ্চতা 0 হতে দিন Then তারপরে সাবট্রি মূলের উচ্চতা এখানে:

  • 4 এ উচ্চতা 0 হয়
  • 3 এ উচ্চতা 0 হয়
  • 2 এ উচ্চতা 3 + 1 = 0 + 1 = 1 এ গড় উচ্চতা
  • 1 এর উচ্চতা 2 এবং 3 = (0 + 1) / 2 + 1 = 1.5 এ উচ্চতার গড় হয়

আমি মনে করি আপনি প্রথম গণনাটি সঠিকভাবে করছেন, এবং 1.5 টি সঠিক উত্তর।


ধারণাটি -1 এর উচ্চতা সহ নাল নোড, 2 য় পদ্ধতির উপর ভিত্তি করে একটি নোডের গড় উচ্চতা সাবট্রিজ প্লাস 1 এর গড়, নোড 4 এর গড় উচ্চতা ((-1) + (- 1)) / 2 + 1 = 0 , নোড 2 এর গড় উচ্চতা (0 + (- 1)) / 2 + 1 = 0.5 এবং সুতরাং মূলের গড় উচ্চতা 1.25।
সময়হীন

@ নাল আপনি জেদ করলে আপনি এটি সেভাবে সংজ্ঞায়িত করতে পারেন, তবে দুটি সংজ্ঞা সংগত হবে না।
জো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.