在c语言中,头指针和尾指针是什么意思
发布网友
发布时间:2022-04-24 01:08
我来回答
共5个回答
热心网友
时间:2023-08-19 08:51
头指针和尾指针一般用于处理数组,链表,队列等数据结构时。
头指针是指的指向上述数据结构的起始的数据的指针,如指向数组首地址的指针,指向链表表头结点的指针
尾指针是指的指向上述数据结构的最末的数据的指针,如指向数组最后成员的指针,指向链表表尾结点的指针
热心网友
时间:2023-08-19 08:51
这是数据结构的概念,和C语言没关系.
而且根据不同教材上对队列的实现方式的不同,答案都是不一样的,比如我看过的书上,front是指向第一个元素,rear是指向最后一个元素的后一个结点,那么答案就是8.有可能别的教材上rear就是指向最后一个元素,那么结果就是9了.
热心网友
时间:2023-08-19 08:52
这个是有公式的,当头指针<尾指针时,队列中总共的元素=rear-front
当头指针>尾指针时,队列中总共的元素=rear-front+队列容量
而此题中,答案=14-6=8
热心网友
时间:2023-08-19 08:53
非循环队列的计算就是简单的rear-front
循环队列需要考虑假溢出,所以在计算的时候,需要max(最大容量)-front,第二步,0+rear,综合起来就是max+rear-front。
所以综合起来就是(max+rear-front)%max
热心网友
时间:2023-08-19 08:53
头指针是指向头结点的指针,头结点是指向链表头的结点。
尾指针是相对于头指针而言的,形式与头指针相同,内容指向链表的最后一个节点。
通常,链表的插入语删除操作都是在链表头或者链表尾进行。如果只保存一个头指针的话,要在链表尾操作时必须先遍历整个表,增加了时间复杂度,如果能再保存一个尾指针,则可以立即找到链表尾,时间复杂度降为O(1)
在单向循环链表中,时常只保存一个尾指针,因为尾指针的下一个节点即是头结点。这样便可以方便地在首尾进行操作。