数据结构(超详细讲解!!!) 第 XVII 节 队列应用(杨辉三角形) - 2. 分析
最编程
2024-04-02 10:04:47
...
打印输出杨辉三角,可以从第一行开始顺序打印。其中在打印过程中,第i行上的元素可以由第i-1行中的元素来生成。由于杨辉三角中第i-1行的数据元素肯定比第i行的数据元素先输出。因此,打印杨辉三角数据的过程具有“先进先出”的特性,可以用一个循环队列依次存放第i-1行上的数据元素,然后逐个出队并打印,同时生成第i行的数据元素并入队。
(1) 第7行的第一个元素1入队。
data[rear]=1;
rear=(rear +1 )% MAXSIZE;
(2) 循环做以下操作, 产生第7行的中间5个元素并入队。
data[rear]=data[front]+data[(front+1) %MAXSIZE];
rear=(rear +1 )% MAXSIZE;
front=(front+1)%MAXSIZE;
(3) 第6行的最后一个元素1出队。
front=(front+1)%MAXSIZE;
(4) 第7行的最后一个元素1入队。
data[rear]=1;
rear=(rear