--数据结构其实就是定义一种性质,并且达到维护这种性质的目的的过程。--
--数据结构并不难,难的是如何使用这些案例的特点来维护数据。--
对列是一种先进先出的线性表【等会我要演示的代码其实和顺序表的结构挺相似的!!!大家也可以尝试一下用链对列来写,它有好处: ①.由于链表的结构,它不在需要扩容了。 但也有坏处: ②.就是对数据的存储需要更大的内存。 但是总的来说,当储存很多的数据的时候,它对空间的利用率是挺高的!!!】,它只允许在表的一端进行插入,而在另一端删除元素【其实这就是对列的一种性质,而这种性质也造成了对列的假溢出现象!后面在详细的讲!!!】。这和日常生活中的排队是一致的,最早进入队列的元素最早离开。在对列中,允许插入的一端称为对尾,允许删除的一端则称为对头。【这也造成了假溢出的现象!!!】。
【大家看看下面假溢出出现的具体原因!!!】
因为对列只能从后面入队,这就导致即使我前面删除元素【出队】,但也假意占着空间,使后面的元素无法进行插入【入队】操作!!!如果我想解决这个问题,就需要: ①.要么扩充元素【这个最后讲】 ②.要么就循环队列。
这样我们就有很大程度上达到循环对列中储存不浪费的问题!!!
【下面来演示代码!!!】
【先定义一个基本的对列(Queue)!!!】
【队列的初始化!!!】
【入队操作!!!】
【出队操作!!!(empty是判空操作,我把它写在了后面)】
【这是出队操作中的判空操作(empty)!!!】
【这是打印对手元素!!!】
【这是销毁操作!!!】
【我定义一个储存大小!!!一会写到主函数中!!!】
【主函数部分!!!】
【这是输入函数部分!!!】
但是写完这些还是不够!!!因为我们发现只能向队列中插入十个元素!!!但在实际工作中,我们要用的的数据可不只这么多个,所以我们要进行扩容操作!!!
【这是扩容操作!!!】通过这个我们就能写入很多元素了!!!
--大家可以与顺序表对比一下康康--