乌拉姆距离(Ulam)
乌拉姆距离定义为两个序列相互转换需要的最小插入次数,用下面的实例进行讲解。
1.初始化序列
给定五个物品{1,2,3,4,5}和两个物品序列
σ
=
(
4
,
3
,
1
,
5
,
2
)
\sigma=(4,3,1,5,2)
σ=(4,3,1,5,2)和
π
=
(
1
,
2
,
3
,
4
,
5
)
\pi=(1,2,3,4,5)
π=(1,2,3,4,5)
2.计算乌拉姆距离 D u ( σ , π ) D_u(\sigma,\pi) Du(σ,π)
将上述
σ
=
(
4
,
3
,
1
,
5
,
2
)
\sigma=(4,3,1,5,2)
σ=(4,3,1,5,2)的物品i插入到
π
=
(
1
,
2
,
3
,
4
,
5
)
\pi=(1,2,3,4,5)
π=(1,2,3,4,5)中i后一个物品j的前面,插入操作用下图表示。我们将
D
u
(
σ
,
π
)
D_u(\sigma,\pi)
Du(σ,π)定义为最小的插入次数。如图中需要插入3次,故
D
u
(
σ
,
π
)
=
3
D_u(\sigma,\pi)=3
Du(σ,π)=3