队列写杨辉三角形

该博客介绍了一种利用队列实现杨辉三角形的方法。首先创建队列1存储0,1,0,然后创建空队列2,将队列1的元素两两相加并存入队列2,同时在队列2末尾添加0。接着清空队列1,重复此过程,不断更新两个队列的内容,以此生成杨辉三角的每一行。" 83822928,2360653,上下文对比特征与门控多尺度聚合在场景分割中的应用,"['深度学习', '计算机视觉', '图像处理', '特征提取', '场景理解']
摘要由CSDN通过智能技术生成

核心思想:第一步:先创建队列1存放0,1,0三个数,再创建一个空队列2,首位置添0,取0,1相加进入 队列2,取1,0相加进入队列2,然后队列2末尾添0,清空队列1

            第二步:队列1首尾添0,取队列2前两位相加进入队列1,取队列2第2,3位相加进入队列1.......队列1末尾添0;

如此往复,写出杨辉三角形

 

#ifndef _YANGHUI_H
#define _YANGHUI_H

#define SUCCESS 10000
#define FAILURE 10001
#define SIZE 100

struct senquencequeue1
{
	int data1[SIZE];  
	int rear1;
	int front1;
};
typedef struct senquencequeue1 Queue1;

struct senquencequeue2
{
	int data2[SIZE];
	int rear2;
	int front2;
};
typedef struct senquencequeue2 Queue2;

int Q1init(Queue1 *q1);

int Q2init(Queue2 *q2);

int yanghui(Queue1 *q1, Queue2 *q2);

#endif

 

#include "yanghui.h"
#include <stdio.h>

int Q1init(Queue1 *q1)
{
	if(NULL == q1)
	{
		return FAILURE;
	}
	q1->rear1 = q1->front1 = 0;
	return SUCCESS;
}

int Q2init(Queue2 *q2)
{
	i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值