约瑟夫问题:将1到m这m个自然数由小到大的顺序沿顺时针方向围成一圈,逼供内建立循环双链表,然后以1为起点,先沿顺时针方向每数到第n个数划去一个数,然后再沿反时针方向每数到第k个数划去一个数,这样按顺时针、逆时针方向不断划数,直到只剩下最后一个数为止。本例C++实现。