الگوریتم دزدان دریایی چیست و چه مواردی را بررسی می کند؟