数据结构实验报告:双端栈设计与验证,队列删除元素功能实现验证

需积分: 0 0 下载量 107 浏览量 更新于2024-03-22 收藏 62KB DOCX 举报
、node.h、node.cpp、dnode.h、dnode.cpp、i_queue.h、list_queue.h、list_queue.cpp、i_stack.h、array_stack.h、array_stack.cpp、dqueue_stack.h、dqueue_stack.cpp、list_stack.h、list_stack.cpp、remove_target.h、remove_target.cpp。 在main.cpp中,首先实例化了一个双端栈对象,并调用其各种方法进行插入和删除操作,验证了双端栈的设计和实现的正确性。然后设计了一个函数remove_target,在队列中删除第一个出现的target元素,并通过调用这个函数来验证其正确性。通过截图展示了实验的运行结果,证明了程序的正常运行。 在node.h和node.cpp中,定义了一个node类,包含了节点的数据成员和构造函数、析构函数以及各种操作节点的方法。在dnode.h和dnode.cpp中,定义了一个dnode类,继承自node类,对双向链表进行操作的方法。这两个类为实现双端栈和队列提供了便捷的操作。 在i_queue.h和list_queue.h、list_queue.cpp中,定义了一个i_queue接口类和一个list_queue类,实现了队列容器的基本操作。在i_stack.h和array_stack.h、array_stack.cpp、dqueue_stack.h、dqueue_stack.cpp、list_stack.h、list_stack.cpp中,定义了一个i_stack接口类和三个不同容器的实现类,分别实现了双端栈容器的基本操作。 在remove_target.h和remove_target.cpp中,设计了一个函数实现在队列中删除第一个出现的target元素的功能。通过辅助队列以及单向链表实现了这个功能,并在实验过程中验证了函数的正确性。 综上所述,通过本次实验,实现了双端栈的设计、实现和验证,设计了一个函数用于在队列中删除指定元素,并验证了其正确性。通过各个类和函数的实现,展示了对数据结构的基本理解和实际操作能力。通过实验过程中的测试和截图展示,证明了程序的正确性和可靠性。希望在以后的实验中能够继续加深对数据结构的理解和应用能力,提升编程实践的水平。