//最近喜欢上了队列。
//几个代码中均运用到了队列。
//
#include<iostream>
#include<queue>
#include <vector>
#include <list>
#include <math.h>
#include <cstdio>
using namespace std;
int main()
{
int n=4;
cin>>n;
int m=pow(2,n)-1; //每层个数
queue<int> q;
int i,j,k=0;
while(n--)
{
m=pow(2,k+1)-1;
for(i=0;i<m;i++)
{
if(i%2==0) q.push(k); //偶位上填新元素k
else {q.push(q.front());q.pop();}
}
k++;
}
while(!q.empty())
{
i=q.front();cout<<i<<" ";
q.pop();
}
cout<<endl;
}原文:http://wzsts.blog.51cto.com/10251779/1766518