كيفية تنفيذ وظيفة الإكمال التلقائي البسيطة؟

StackOverflow https://stackoverflow.com/questions/73095

  •  09-06-2019
  •  | 
  •  

سؤال

أرغب في تنفيذ فئة بسيطة (في Java) تسمح لي بتسجيل السلاسل وإلغاء تسجيلها، وعلى أساس المجموعة الحالية من السلاسل، قم بالإكمال التلقائي لسلسلة معينة.إذن الواجهة ستكون:

  • إضافة باطلة (سلسلة)
  • إزالة باطلة (سلسلة)
  • اكتملت السلسلة (سلسلة)

ما هي أفضل طريقة للقيام بذلك من حيث الخوارزميات وهياكل البيانات؟

هل كانت مفيدة؟

المحلول

يجب أن تفكر في استخدام تجربة PATRICIA لبنية البيانات.ابحث عن "patricia trie" في جوجل وستجد الكثير من المعلومات...

نصائح أخرى

تسمى بنية البيانات التي تبحث عنها باسم شجرة البحث الثلاثية.

يوجد مثال رائع لـ JavaWorld على www.javaworld.com/javaworld/jw-02-2001/jw-0216-ternary.html

يجب أن تكون نوعًا ما من القائمة التي يمكنك الاحتفاظ بها بترتيب فرزها.سيتعين عليك أيضًا كتابة خوارزمية البحث الخاصة بك والتي ستمنحك فهرس العنصر الأول في القائمة الذي يطابق نمط البحث الخاص بك.ثم كرر ذلك من هذا الفهرس حتى العنصر الأول غير المطابق وستحصل على قائمة الإكمالات المحتملة.

كنت أنظر إلى قائمة الشجرة من المجموعات المشتركة.يحتوي على أوقات إدراج وإزالة سريعة من منتصف القائمة والتي ستحتاجها من أجل الحفاظ على الترتيب المرتب.ربما يكون من السهل إلى حد ما كتابة وظيفة البحث الخاصة بك من الشجرة التي تدعم تلك القائمة.

لمن يتعثر في هذا السؤال..

لقد نشرت للتو أ تنفيذ الإكمال التلقائي من جانب الخادم على كود جوجل.يتضمن المشروع مكتبة جافا يمكن دمجها في التطبيقات الموجودة وخادم الإكمال التلقائي المستقل HTTP AJAX.

آمل أن يمكّن الأشخاص من دمج الإكمال التلقائي الفعال في تطبيقاتهم.ركلة الإطارات!

لقد قمت بإنشاء مكون إضافي لـ JQuery يسمى Simple AutoComplete، والذي يسمح لك بإضافة العديد من الإكمال التلقائي كما تريد في نفس الصفحة، وإضافة مرشحات مع معلمات إضافية، وتنفيذ وظيفة رد الاتصال لجلب معلمات أخرى، مثل معرف العنصر.

شاهده في http://www.idealmind.com.br/projetos/simple-autocomplete-jquery-plugin/

التعبيرات العادية

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top