【转】猴子称大王问题算法
摘要:题目:一堆猴子都有编号,编号是1,2,3 ...m ,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。 解题思路:将围成一圈的m只猴子看作是一个循环链表,从第一个节点(猴子)开始移动(数),到第n个节点(猴子),将它删除,然后从后面一个节点(猴子)继续移动,并从1重新开始计数……直到循环链表中只剩一个节点(猴子)算法描述: 1 LinkNode *cl; //定义一个循环表,指向头节点 2 3 LinkNode *tcl; //定义一个临时指针 4 5 tcl=cl;//指向头节点 6 7 wh
阅读全文
posted @ 2011-04-12 13:05
浙公网安备 33010602011771号