شجرة Trie، المعروفة أيضًا باسم شجرة البادئة، هي بنية بيانات متخصصة قائمة على الشجرة تُستخدم لاسترجاع المعلومات بكفاءة.
إنها مفيدة بشكل خاص لحالات الاستخدام التي تتضمن البحث ومطابقة البادئة داخل السلاسل.
إذا أخبرتك عن خوارزمية Trie فقد تكون مهتمًا أو لا تكون مهتمًا بهذه الخوارزمية
ولكن إذا كنت سأخبرك أنه يمكنك إنشاء خوارزمية الإكمال التلقائي باستخدام هذا. سوف تكون أكثر حماسًا لتعلم هذا.
حالة استخدام هذه الخوارزمية
1. الإكمال التلقائي:
أ. غالبًا ما تُستخدم المحاولات في محركات البحث أو برامج تحرير النصوص لتنفيذ ميزة الإكمال التلقائي.
ب. عندما تبدأ في الكتابة، يقترح التطبيق عمليات إكمال محتملة بناءً على البادئة التي أدخلتها.
2. المدقق الإملائي:
أ. يمكن استخدام المحاولات لتنفيذ المدقق الإملائي. إذا لم تكن هناك كلمة موجودة في المحاولة، فمن المحتمل أن تكون مكتوبة بشكل خاطئ.
ب. يمكن للمحاولة أيضًا اقتراح تصحيحات من خلال البحث عن كلمات مماثلة.
3. توجيه IP:
أ. تُستخدم المحاولات في أجهزة التوجيه لتخزين جداول التوجيه.
ب. يستخدم جهاز التوجيه محاولة لمطابقة البادئة الأطول، والتي تحدد الخطوة التالية للحزمة.
4. تخزين السلاسل والبحث عنها بكفاءة:
أ. إذا كان لديك مجموعة بيانات من السلاسل حيث يوجد الكثير من البادئات المشتركة، فيمكن للمحاولة تخزين هذه السلاسل باستخدام مساحة أقل من تخزينها بشكل فردي.
ب. تتميز عملية البحث أيضًا بالكفاءة، حيث يتناسب التعقيد الزمني مع طول السلسلة التي تبحث عنها.
class Node { constructor() { this.end = false; this.children = {} } } class Trie { constructor() { this.root = new Node (); } insert(word) { let head = this.root; for (let i = 0; i ', current.children); console.log('Possible Auto Complete Values are --->'); for (let key in current.children) { console.log('---> ', word key); } } } const test = new Trie(); test.insert('ant'); test.insert('any'); console.log(test.search('ant')); console.log(test.search('any')); console.log(test.search('anj')); test.autoComplete('an') /* true true false children =---> { t: Node { end: true, children: {} }, y: Node { end: true, children: {} } } Possible Auto Complete Values are ---> ---> ant ---> any */
لا تتردد في التواصل معي إذا كانت لديك أي مخاوف/استفسارات.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3