C++实现双链表的基本功能
作者:网络转载 发布时间:[ 2017/3/7 10:46:24 ] 推荐标签:测试开发技术 双链表
在C++实现中如果遇到结点结构好定义为struct,否则会像上述情况一样需要声明多次友元,反而破坏了类的封装性
测试代码:
[cpp] view plain copy print?
void menu()
{
cout<<"************1.尾插************2.尾删**************"<<endl;
cout<<"************3.头插************4.头删**************"<<endl;
cout<<"************5.指定位置后插****6.指定位置前插******"<<endl;
cout<<"************7.删除指定元素****8.删除所有指定元素**"<<endl;
cout<<"************9.排序************0.退出*************"<<endl;
cout<<"************11.Erase**********0.退出*************"<<endl;
}
void test()
{
LinkList list;
Node *ret=NULL;
int input=1;
DataType x,num;
while(input)
{
menu();
cout<<"请输入您的选择>";
cin>>input;
switch(input)
{
case 1:
cout<<"请输入您要插入的数据>";
cin>>x;
list.PushBack(x);
break;
case 2:
list.PopBack();
break;
case 3:
cout<<"请输入您要插入的数据>";
cin>>x;
list.PushFront(x);
break;
case 4:
list.PopFront();
break;
case 5:
cout<<"请输入您要查找的数据>";
cin>>x;
ret=list.FindNum(x);
if(ret != NULL)
{
cout<<"请输入您要插入的数据>";
cin>>num;
list.Insert(ret,num);
}
else
{
cout<<"您所查找的数据不存在"<<endl;
}
break;
case 6:
cout<<"请输入您要查找的数据>";
cin>>x;
ret=list.FindNum(x);
if(ret != NULL)
{
cout<<"请输入您要插入的数据>";
cin>>num;
list.Insert(0,ret,num); //0用于占位,构成重载
}
else
{
cout<<"您所查找的数据不存在"<<endl;
}
break;
case 7:
cout<<"请输入您要删除的数据>";
cin>>x;
list.Remove(x);
break;
case 8:
cout<<"请输入您要删除的数据>";
cin>>x;
list.RemoveAll(x);
break;
case 9:
list.Sort();
break;
case 10:
cout<<list<<endl;
break;
case 11:
cout<<"请输入您要擦除的数据>";
cin>>x;
ret=list.FindNum(x);
if(ret != NULL)
{
list.Erase(ret);
}
else
{
cout<<"您所查找的数据不存在"<<endl;
}
break;
case 0:
break;
default:
cout<<"您的输入错误"<<endl;
break;
}
}
}
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐

更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11热门文章
常见的移动App Bug??崩溃的测试用例设计如何用Jmeter做压力测试QC使用说明APP压力测试入门教程移动app测试中的主要问题jenkins+testng+ant+webdriver持续集成测试使用JMeter进行HTTP负载测试Selenium 2.0 WebDriver 使用指南