数据结构回顾:队列、栈、链表

复习引言

– 我记得我第一次在生产中接触队列是在百度UDC,那时候接触不是赤裸的结构体,是所谓的消息中间件,rabbitMQ 还有 laravel 中的轻量级队列,还有用来导入数据的 kafka 的 broker 等等那些我暂时没有深入研究过的队列,现在要复习的不是那些中间件,而是我上学时候应该学好的数据结构。目前做太久业务逻辑,很久没有用到了,该做一次复习了。
队列结构

实现
#include <stdio.h>
#include <string.h>
struct queue
{
    char a[100]; // 只定义,未初始化
    int head;
    int tail;
}

int main()
{
    struct queue q;
    int i;
    // 队列初始化
    q.head = 1;
    q.tail = 1;
    for (i=1; i<=9; i++)
    {
        scanf("%c", &q.data[q.tail]);
        q.tail++;
    }
    // 队列中有数时执行循环
    while (q.head < q.tail)
    {
        // 打印head并出队
        printf("%d", q.data[q.head]);
        q.head++;
        // 将新的head添加到队尾
        q.data[q.tail] = q.data[q.head];
        q.tail++;
        // 将head 出队
        q.head++;
    }
    return 0}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值