srp問題是一個(gè)尋找最短時(shí)間的問題有一艘支援船在港口(假設(shè)坐標(biāo)是0,0),要去訪問此時(shí)在海上航行的所有船只,問,按照什么順序訪問才會(huì)使得支援船的航行時(shí)間最短?我的想法是定義一個(gè)solution列表,保存找到的索引先遍歷所有需要訪問的船只,計(jì)算從支援船當(dāng)前位置到當(dāng)前船只的相遇時(shí)間,存入一個(gè)列表里面。然后對(duì)這個(gè)列表進(jìn)行排序,從中選出時(shí)間最短的船的索引加入到solution列表中,然后把這個(gè)船從待訪問的船中刪除,更新支援船的坐標(biāo)為這個(gè)相遇的坐標(biāo)其他船只的坐標(biāo)也更新為其速度乘以這個(gè)最短時(shí)間再繼續(xù)下一次循環(huán)不知道這這樣算不算是貪心算法?如果是貪心算法,不是貪心算法會(huì)有失效的情況嗎?不知道這樣會(huì)在什么情況下導(dǎo)致這個(gè)算法失效,找到的并不是全局最優(yōu)。求各位大佬給我解惑...
有沒有人遇到過這個(gè)問題哈!關(guān)于貪心算法的一些疑問?
瀟湘沐
2019-06-10 09:25:43