160 likes | 677 Views
سوف اقوم في هذا الدرس بشرح Binary Tree Traversal. Binary Tree Traversal:. يوجد عدة طرق لــ ( Binary Tree Traversal ): الزيارة باستخدام: Inorder Traversal الزيارة باستخدام: Postorder Traversal
E N D
سوف اقوم في هذا الدرس بشرح Binary Tree Traversal
Binary Tree Traversal: يوجد عدة طرق لــ (Binary Tree Traversal): • الزيارة باستخدام: Inorder Traversal • الزيارة باستخدام: Postorder Traversal • الزيارة باستخدام: Preorder Traversal سوف أقوم بشرح جميع انواع الزيارات كلاً على حدة:
لو كان لدينا هذه الـBinary tree :- Depth=0 A B C Depth=1
سوف يتم استخدام الخوارزمية التالية في زيارة الشجرة:Inorder(Tree*P){ if(P) { Inorder(P->left) Disolay(P->info) Inorder(P->right) }} 1- الزيارة باستخدام (LrR) Inorder Traversal
A B C بدا من هنا فقط اتبع السهم الناتج سيكون كتالي: BAC
سوف يتم استخدام الخوارزمية التالية في زيارة الشجرة:postorder(Tree*P){ if(P) { postorder(P->left) postorder(P->right) Disolay(P->info) }} 2- الزيارة باستخدام (LRr) Postorder Traversal
A B C بدا من هنا فقط اتبع السهم الناتج سيكون كتالي: BCA
سوف يتم استخدام الخوارزمية التالية في زيارة الشجرة:preorder(Tree*P){ if(P) { Disolay(P->info) preorder(P->left) preorder(P->right) }} 2- الزيارة باستخدام (rLR) Preorder Traversal
A B C بدا من هنا فقط اتبع السهم الناتج سيكون كتالي: ABC
البعض منكم قد يقول لو كانت الشجرة متفرعة اكثر (لديها عمق(depth)اكبر)؟حسناً سوف اقوم بتوضيح لمن يريد ذالك (معلومات اضافية):قبل ان ابدا اريد ان اشير الى عدة نقاط هامة هي:1-مهما كبرت شجرة (Binary tree) فانه لا يمكن ان يكون للأب اكثر من ابنين في نفس الجيل وإلا لن تكون هذه الشجرة Binary tree ولأكن يمكن ان يملك واحد او اثنين او صفر( NULL).2-سوف نستخدم الخوارزميات السالفة الذكر في الامثلة التي سنقوم بشرحها .3- سوف يتغير عدد النود في الشجرة فقط التي سنعملها لتكبير حجمها .
A B C D E F G ستكون الشجرة بهذا الحجم:
A B C D E F G اتبع السهم في الــ: Inorder Traversal الناتج سيكون كتالي: D B E A F C G
A B C D E F G اتبع السهم في الــ: Postorder Traversal الناتج سيكون كتالي: D E B F G C A
A B C D E F G اتبع السهم في الــ: Preorder Traversal الناتج سيكون كتالي: A B D E C F G
A B C Level 3 Level 4 Level 0 Level 1 Level 2 D E F G H I بعض الاسئلة السؤال: كيف يتم معرفة عمق الشجرة الــ(depth)؟ الجواب: الجواب موضح خلال الرسم التالي: Depth=4
تم شرح المحاضرة من قبل الطالب:محمد راشد صالح داودالمجموعة التاسعةتم استنباط الشرح من محاضرة الدكتور فضل با علويmy Email :mohammed2008_dawod@hotmail.comتم تنزيل شرح المحاضرة في الموقع التالي:http:// www.4online.tkmy nick name: SpyMan