🔴 الگوریتم بویان (BOYER-MOORE)؛ سرعت جستوجو در متن با هوش تحلیلی
🔸 الگوریتم بویان-مور یکی از سریعترین الگوریتمها برای جستوجوی الگو در رشتههاست که برخلاف روشهای سادهتر، از قبل تحلیل هوشمند روی الگو انجام میدهد. این الگوریتم به جای چک کردن کاراکتر به کاراکتر، با پیشپردازش دقیق، جهشهای بزرگتری در متن انجام میدهد و همین ویژگی باعث عملکرد فوقالعاده آن در متون بزرگ میشود.
🔹 دو تکنیک اساسی در بویان-مور عبارتند از “قانون بد کاراکتر” و “قانون پسوند خوب”. در حالت اول، اگر کاراکتری از متن با کاراکتر متناظر در الگو مطابقت نداشت، الگوریتم میداند که چند کاراکتر باید جهش کند بدون بررسی تکراری. در حالت دوم، اگر بخشهایی از الگو با بخشی از متن هماهنگ بود ولی در نهایت شکست خورد، از این تطابق جزئی برای تعیین جهش استفاده میشود. این دو تکنیک در کنار هم باعث میشوند که در اکثر موارد، الگوریتم زیر خطی (sublinear) عمل کند.
⭕️ در پردازش متن، جستوجوی کد منبع یا حتی تحلیل سریع لاگها، بویان-مور انتخابی بیرقیب برای سرعت است.
🌐 مرجع تخصصی برنامه نویسان
🆔 @Barnamenevisan_org
>>Click here to continue<<
