https://knightzone.studio/2019/03/29/4131/leetcode%ef%bc%9a31-next-permutation/
#LeetCode:31. Next Permutation