📜  数据结构|队列|问题11

📅  最后修改于: 2021-06-29 21:00:59             🧑  作者: Mango

考虑下面的伪代码。假定IntQueue是一个整数队列。 fun函数?

void fun(int n)
{
    IntQueue q = new IntQueue();
    q.enqueue(0);
    q.enqueue(1);
    for (int i = 0; i < n; i++)
    {
        int a = q.dequeue();
        int b = q.dequeue();
        q.enqueue(b);
        q.enqueue(a + b);
        ptint(a);
    }
}

(A)打印从0到n-1的数字
(B)打印从n-1到0的数字
(C)打印前n个斐波那契数
(D)以相反的顺序打印前n个斐波那契数。答案: (C)
说明:该函数打印前n个斐波那契数。请注意,q中最初存在0和1。在循环的每次迭代中,两个队列项的总和被排队,最前面的项目被出队。
这个问题的测验