我觉得挺好理解的吗
进入函数后首先判断当前的index 是不是等于n+1,如果是则说明所有的数都已经排列完毕,因为最后一个数已经放到了p[]这个数组里然后打印这个数组返回
如果不是判断这个数是不是在这个数组里,这是通过hash表里面的项是否为true来判断的,如果没有 则把这个数放进数组 ,然后把hash表里的项设为true,表示这个数已经放到数组里了,然后在排列下面的剩下的数字。
如果没有还原状态你就只会输出123,但是这里想让你输出除了123,还想要有132(比如),这时候你return回来第二位发现hashTable[3]==true,就进行不下去了