利用约瑟夫环生成约瑟夫密码
有m个人围成一个环,每个人有一个编号,分别是1到m。从第一个人开始报 数,报到n的人退出环,并且由他的值来代替原有的n值。当所有的人都退出 环后,根据退出环的顺序,形成一个新的数字序列。利用该数字序列生成一个 二叉树,第一个数字是根节点,第二,三个数字是他的孩子节点,第四,五个 数字是第二个数字的孩子节点,第六,七个数字是第三个数字的孩子节点,依此 类推。。。。。。。。,然后中序遍历这个二叉树,得到得数字序列就是约瑟夫密码。 比如:五个人围成一个环,数到二的人退出,那么退出圆环的序列为:2 4 5 1 3,最终生成的约瑟夫密码为:1 4 3 2 5。