سوال ۶۹ کنکور ارشد علوم کامپیوتر ۱۴۰۵
اهمیت
۰/۵
فرض کنید یک درخت جستجوی دودویی (BST)، با گره داریم که اعداد ۱ تا را بهصورت نامرتب در خود ذخیره کرده است. الگوریتم بازگشتی زیر روی این درخت اجرا میشود:
Algorithm mys(node):
if node == NULL: return 0
if node.left == NULL and node.right == NULL:
return 1
if node.left != NULL and node.right != NULL:
return mys(node.left) + mys(node.right)
if node.left != NULL:
return mys(node.left) + 1
if node.right != NULL:
return mys(node.right) + 1
کدام گزینه در مورد خروجی این الگوریتم همواره درست است؟
پاسخ صحیح: گزینهٔ A — خروجی الگوریتم برابر با تعداد گرههای برگ به اضافه تعداد گرههایی که دقیقاً یک فرزند دارند است.
پاسخ تشریحی
Let be the value returned by mys(v). The four branches give the recurrence
ادامهٔ پاسخ تشریحی ویژهٔ مشترکان است.
مشاهدهٔ پاسخ کامل#binary-search-tree#recursion#leaves#node-counting#tree-traversal