欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

数据结构(超详细讲解!!!) 第 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