算法  是一道leetcode的hard题,  可以通过交换然后判断是否在其位来做