- 博客(1)
- 收藏
- 关注
原创 2021-09-02 约瑟夫问题,java实现(个人详解,相信一定能看懂)
约瑟夫问题(个人详解,另外本人是菜鸡,如有错误欢迎指正)问题描述分析过程代码易错点讲解 问题描述 约瑟夫问题是个著名的问题:N个人围成一圈,第一个人从1开始报数,报M的将被杀掉,下一个人接着从1开始报。如此反复,最后剩下一个,求最后的胜利者。 分析过程 构造链表法时间复杂度过大,不做讨论。 数学解法:使用动态规划求解。这里令:f(n,m)表示在n个人里从1循环报数,报数到m的人离开,直到最后只剩下一个人,其返回值为最后一个人在这初始n个人里的索引(索引每离开一个人,就会变一次)。那么People[f(n,m
2021-09-02 11:20:03
193
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人