কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্ট ট্রিতে প্রি-অর্ডার ট্রাভারসাল


এই ট্রাভারসাল মেথডে, রুট নোডটি প্রথমে ভিজিট করা হয়, তারপর বাম সাবট্রি এবং অবশেষে ডান সাবট্রি।

জাভাস্ক্রিপ্ট ট্রিতে প্রি-অর্ডার ট্রাভারসাল

আমরা A-থেকে শুরু করি, এবং প্রি-অর্ডার ট্রাভারসাল অনুসরণ করে, আমরা প্রথমে A-কেই ভিজিট করি এবং তারপর এর বাম সাবট্রি B-এ যাই। B-টিও প্রি-অর্ডার ট্রাভার্স হয়। প্রক্রিয়াটি চলতে থাকে যতক্ষণ না সব নোড ভিজিট হয়। এই ট্রির প্রি-অর্ডার ট্রাভারসালের আউটপুট হবে:

A → B → D → E → C → F → G

এটি वो অ্যালগরিদম যা আমরা বাস্তবায়ন করব:

  • নোডের ডেটা প্রিন্ট করুন
  • রিকারসিভলি বাম সাবট্রি ট্রাভার্স করুন
  • রিকারসিভলি ডান সাবট্রি ট্রাভার্স করুন

আসুন দেখি আমরা আমাদের ক্লাসে কীভাবে এটি বাস্তবায়ন করব।

preOrder() {
    preOrderHelper(this.root);
}

হেল্পার ফাংশন:

উদাহরণ

function preOrderHelper(root) {
    if (root !== null) {
        console.log(root.data);
        preOrderHelper(root.left);
        preOrderHelper(root.right);
    }
}

আপনি নিচের কোড দিয়ে এটি পরীক্ষা করতে পারেন:

উদাহরণ

let BST = new BinarySearchTree();
BST.insertRec(10);
BST.insertRec(15);
BST.insertRec(5);
BST.insertRec(50);
BST.insertRec(3);
BST.insertRec(7);
BST.insertRec(12);
BST.preOrder();

আউটপুট

এটি নিচের আউটপুট দেবে:

10 5 3 7 15 12 50

  1. C++-এ বাইনারি ট্রি লেভেল অর্ডার ট্রাভার্সাল

  2. ডেটা স্ট্রাকচারে প্রি-অর্ডার ট্রি ট্রাভার্সাল

  3. ডেটা স্ট্রাকচারে পোস্ট-অর্ডার ট্রি ট্রাভার্সাল

  4. ডেটা স্ট্রাকচারে লেভেল-অর্ডার ট্রি ট্রাভার্সাল