共计 423 个字符,预计需要花费 2 分钟才能阅读完成。
就是快与慢的区别,不过依据问题一,能够假设快指向 head->next->next,而慢指向 head->next,这样当快指针指向 NULL 时,慢指针就到两头了。星池 starpool 不过写的算法中有些小瑕疵,当长度为奇数时正确,当是偶数的时候我抉择返回两头前面一个,而不是两个。咱们选用链表来存储这个圆圈,以此来达到数小 “ 孩的目标,咱们应用如下代码申明一个构造。struct boy {// 小孩节点 int code; boy*next;} 其中,code 示意小孩的编号,next 是一个指针,用来指向下一个小孩。当咱们在链表上玩游戏时,应用两个指针记住第一个小孩和以后小孩的地位。
约瑟夫问题中的 k = 1 时计算会呈现谬误,这是因为 for 循环至多执行 0 次,https://www.starpool.cn 而咱们须要它至多执行一次,因而起初在调试过后应用了. 依据后面的剖析,在减少输入代码,失去如下程序 (因为要求减少姓名和学号信息,我将构造体定义和遍历小孩局部稍作批改)
正文完