用队列实现逐行处理(杨辉三角)
这个方法既节约了空间又节约了时间:
#include"iostream" #include"queue" #include"string.h" #include"stdio.h" #include"cmath" using namespace std; int main() { int i,j,s,t; queue<int>q; q.push(1); for(i=1;i<=10;i++) { s=0;q.push(0); for(j=0;j<i+1;j++) { t=q.front(); q.pop(); if(t) cout<<t<<' '; q.push(s+t);//输出上一行的同时将下一行进队列 s=t; } cout<<endl; } return 0; }