数据结构实验:ADT复制、比较及双向链表实现
1. 实验背景
在C++编程中,数据结构的复制和比较操作常常会带来一些问题。默认的C++复制构造函数和赋值运算符可能会导致运行时错误,使程序在执行过程中中断。同时,一些默认的C++运算符在处理数据结构的深层复制时,也会出现不可接受的行为。此外,单链表在删除和向后移动操作上效率较低,而双向链表则能在这些操作上表现更优。
2. 实验内容
2.1 实验8:复制和比较抽象数据类型(ADT)
2.1.1 实验8 - 实验内练习2:复制和比较ADT
- 问题描述 :默认的C++复制构造函数和赋值运算符可能导致运行时错误,而一些默认运算符在比较深层数据结构时会给出无效结果。例如,比较运算符(
==)在比较两个等价但不同的单链表时,会比较头指针和游标指针的值,而不是链表中的数据项。 - 操作步骤 :
- 实现
bool operator == ( const List &rightList )操作,并将其添加到listlnk2.cpp文件中。该操作的原型已包含在listlnk2.h文件的List类声明中。 - 激活
test8.cpp文件中测试程序的?(相等比较)命令,通过移除以//?
- 实现
超级会员免费看
订阅专栏 解锁全文
912

被折叠的 条评论
为什么被折叠?



