C语言栈和队列

1.思维导图

2. 队列

出队

cs 复制代码
int pop(queuePtr Q)
{
	if(NULL==Q||empty(Q))
	{
		printf("出队失败\n");
		return -1;
	}
	printf("%d 出队\n",Q->data[Q->front]);
	Q->front=(Q->front+1)%max;
	show(Q);
	return 1;
}

输出结果:

顺序队列的大小

cs 复制代码
int size(queuePtr Q)
{
	if (NULL==Q||empty(Q))
	{
        printf("错误\n");
        return -1;
    }
    printf("队列大小为%d\n",(max+Q->tail+max-Q->front)%max);
	show(Q);
	return 1;
}

输出结果:

销毁

cs 复制代码
void a_free(queuePtr Q)
{
	if(NULL==Q||empty(Q))
	{
		printf("销毁失败\n");
		return;
	}
	free(Q);
	Q=NULL;
	printf("销毁成功\n");
	return;
}

输出结果:

相关推荐
I_LPL16 分钟前
hot100 栈专题
算法·
2401_8795034128 分钟前
C++中的观察者模式变体
开发语言·c++·算法
阿贵---1 小时前
C++中的备忘录模式
开发语言·c++·算法
setmoon2141 小时前
C++中的观察者模式实战
开发语言·c++·算法
2403_835568471 小时前
C++代码规范化工具
开发语言·c++·算法
tankeven1 小时前
HJ138 在树上游玩
c++·算法
lihihi2 小时前
P1209 [USACO1.3] 修理牛棚 Barn Repair
算法
weixin_387534222 小时前
Ownership - Rust Hardcore Head to Toe
开发语言·后端·算法·rust
庞轩px2 小时前
MinorGC的完整流程与复制算法深度解析
java·jvm·算法·性能优化
Queenie_Charlie2 小时前
Manacher算法
c++·算法·manacher