202109-06 详解基于C++实现约瑟夫环问题的三种解法 目录一、前言二、循环链表模拟三、有序集合模拟四、递归公式解决五、结语一、前言什么是约瑟夫环问题?约瑟夫环问题在不同平台被"优化"描述的不一样,例如在牛客剑指offer叫孩子们的游戏,还有叫杀人游戏,点名……最直接的感觉还是力扣上剑指offer62的描述:圆圈中最后剩下的数字。问题描述:0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩... 继续阅读 >
202009-24 使用python从三个角度解决josephus问题的方法 0写在前面josephus问题是数据结构教材中的一个常见实例,其问题可以描述为:设nnn个人围坐一圈,现在要求从第kkk个人开始报数,报到第mmm个的人退出。然后从下一个人开始继续按照同样规则报数并退出,直到所有人退出为止。要求按照顺序输出每个人的序列号。1基于数组概念的解法首先考虑基于python的list和固定大小的数组概念,即将list看作元素个数固定的对象,只改变值而不删除元素,相当于摆了一圈nnn把椅子,人虽然退出但是椅... 继续阅读 >