gpt4 book ai didi

c - 为什么BSD queue.h LIST 叫做列表?

转载 作者:太空宇宙 更新时间:2023-11-04 08:54:56 27 4
gpt4 key购买 nike

我的“母语”是 Java,出于教育目的,我需要用 C 编写一个项目。我尝试了解 queue.h 库。在 Java 中,默认情况下您 add() 一个项目到 List 的末尾,但是在 queue.h 中只有 LIST_INSERT_HEAD 不接受其他成员的宏。事实上,一个小测试显示它插入到 HEAD(当使用 LIST_FOREACH 遍历时,它从最后一个插入的元素到第一个)。所以,这不应该叫FILO队列(就是栈的意思)吗?

最佳答案

Java中的List对应于List ADT :“一个有序的值序列,其中相同的值可能出现不止一次”。

queue.h中的LIST也是一个List ADT,里面可以看到具体的实现细节(实现为双向链表)。它是后进先出法,正如 queue.h 文件中所说的那样(尽管非常含糊)。是的,一种实现 Stack ADT 的方法由 using a linked list 提供.

关于c - 为什么BSD queue.h LIST 叫做列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708618/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com