tabu2.py 文件源码

python
阅读 34 收藏 0 点赞 0 评论 0

项目:pylspm 作者: lseman 项目源码 文件源码
def stochasticTwoOpt(perm):
    result = perm[:]  # make a copy
    size = len(result)
    p1, p2 = random.randrange(0, size), random.randrange(0, size)
    exclude = set([p1])
    if p1 == 0:
        exclude.add(size - 1)
    else:
        exclude.add(p1 - 1)

    if p1 == size - 1:
        exclude.add(0)
    else:
        exclude.add(p1 + 1)

    while p2 in exclude:
        p2 = random.randrange(0, size)

    if p2 < p1:
        p1, p2 = p2, p1

    result[p1:p2] = reversed(result[p1:p2])

    return result
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号