//一只猫抓了N(N>1)只老鼠 他给所有的老鼠按自然数顺序编了号 每次他让老鼠按号码升序排队并报数
//然后吃掉奇数的老鼠 直到只剩下一只老鼠 求该老鼠的编号 要求用链表完成 环境VC6.0或TC2.0都可以
int lastMouse(LinkList head) {
ListNode* p, * q;
while (head->next->next)//保留最后一个
{
p = q = head;
do
{
q = p;
p = p->next->next;
//free(q->next);
q->next = p;
} while (p->next&&p->next->next);
if (p->next) {
//free(p->next);
p->next = NULL;
}
PrintList(head, true);
}
return head->next->data;
}