实例介绍
【实例简介】单/双向链表基础
链表
【实例截图】
【核心代码】
Person zhangsan=new Person() {Name="张三",Age=21,Gender='男' };
Person lisi = new Person() { Name = "李四", Age = 30, Gender = '男' };
Person wangwu = new Person() { Name = "王五", Age = 10, Gender = '男' };
Person zhaoliu = new Person() { Name = "赵六", Age = 32, Gender = '男' };
Person sunqi = new Person() { Name = "孙琦", Age = 25, Gender = '女' };
Person laoba = new Person() { Name = "老八", Age = 31, Gender = '男' };
Person linjiu = new Person() { Name = "林玖", Age = 13, Gender = '女' };
#region 单项链表
{
SingeLinkList<Person> zhangsanLink = new SingeLinkList<Person>();
zhangsanLink.Current = zhangsan;
SingeLinkList<Person> lisiLink = new SingeLinkList<Person>();
lisiLink.Current = lisi;
SingeLinkList<Person> wangwuLink = new SingeLinkList<Person>();
wangwuLink.Current = wangwu;
SingeLinkList<Person> zhaoliuLink = new SingeLinkList<Person>();
zhaoliuLink.Current = zhaoliu;
SingeLinkList<Person> sunqiLink = new SingeLinkList<Person>();
sunqiLink.Current = sunqi;
SingeLinkList<Person> laobaLink = new SingeLinkList<Person>();
laobaLink.Current = laoba;
zhangsanLink.Next = lisiLink;
lisiLink.Next = zhaoliuLink;
zhaoliuLink.Next = sunqiLink;
sunqiLink.Next = laobaLink;
Console.WriteLine("<!-------------------------单链表-------------------------");
OutPutSingleLink(zhangsanLink);
lisiLink.Next = wangwuLink;
wangwuLink.Next = zhaoliuLink;
Console.WriteLine("-------------------------分割线-------------------------");
OutPutSingleLink(zhangsanLink);
Console.WriteLine("!-------------------------单链表------------------------->");
}
#endregion
#region 双项链表
Console.WriteLine("<!-------------------------双链表-------------------------");
DoubleLinkList<Person> doubleLinkList3 = new DoubleLinkList<Person>();
DoubleLinkList<Person> doubleLinkList4 = new DoubleLinkList<Person>();
DoubleLinkList<Person> doubleLinkList5 = new DoubleLinkList<Person>();
doubleLinkList5.Current = wangwu;
DoubleLinkList<Person> doubleLinkList6 = new DoubleLinkList<Person>();
DoubleLinkList<Person> doubleLinkList7 = new DoubleLinkList<Person>();
DoubleLinkList<Person> doubleLinkList8 = new DoubleLinkList<Person>();
doubleLinkList3.Prev = null;
doubleLinkList3.Next = doubleLinkList4;
doubleLinkList3.Current = zhangsan;
doubleLinkList4.Prev = doubleLinkList3;
doubleLinkList4.Next = doubleLinkList6;
doubleLinkList4.Current = lisi;
doubleLinkList6.Prev = doubleLinkList4;
doubleLinkList6.Next = doubleLinkList7;
doubleLinkList6.Current = zhaoliu;
doubleLinkList7.Prev = doubleLinkList6;
doubleLinkList7.Next = doubleLinkList8;
doubleLinkList7.Current = sunqi;
doubleLinkList8.Prev = doubleLinkList7;
doubleLinkList8.Next = null;
doubleLinkList8.Current = laoba;
Console.WriteLine("!-----------正序--------->");
OutPutDoubleLinkAsc(doubleLinkList3);
Console.WriteLine("!-----------倒序--------->");
OutPutDoubleLinkDesc(doubleLinkList8);
Console.WriteLine("!-----------插入5--------->");
var result= InsertDobleLink(doubleLinkList3, doubleLinkList5, 3);
OutPutDoubleLinkAsc(result);
Console.WriteLine("!-------------------------双链表------------------------->");
#endregion
void OutPutSingleLink(SingeLinkList<Person> singeLinkList)
{
while (singeLinkList.Next != null)
{
Console.WriteLine(singeLinkList.Current);
singeLinkList = singeLinkList.Next;
}
}
.
├── 单项链表
│ ├── 单项链表
│ │ ├── Model
│ │ │ └── Person.cs
│ │ ├── Program.cs
│ │ ├── Services
│ │ │ ├── DoubleLinkList.cs
│ │ │ └── SingeLinkList.cs
│ │ ├── bin
│ │ │ └── Debug
│ │ │ └── net6.0
│ │ │ ├── ref
│ │ │ │ └── 单项链表.dll
│ │ │ ├── 单项链表.deps.json
│ │ │ ├── 单项链表.dll
│ │ │ ├── 单项链表.exe
│ │ │ ├── 单项链表.pdb
│ │ │ └── 单项链表.runtimeconfig.json
│ │ ├── obj
│ │ │ ├── Debug
│ │ │ │ └── net6.0
│ │ │ │ ├── apphost.exe
│ │ │ │ ├── ref
│ │ │ │ │ └── 单项链表.dll
│ │ │ │ ├── 单项链表.AssemblyInfo.cs
│ │ │ │ ├── 单项链表.AssemblyInfoInputs.cache
│ │ │ │ ├── 单项链表.GeneratedMSBuildEditorConfig.editorconfig
│ │ │ │ ├── 单项链表.GlobalUsings.g.cs
│ │ │ │ ├── 单项链表.assets.cache
│ │ │ │ ├── 单项链表.csproj.AssemblyReference.cache
│ │ │ │ ├── 单项链表.csproj.CoreCompileInputs.cache
│ │ │ │ ├── 单项链表.csproj.FileListAbsolute.txt
│ │ │ │ ├── 单项链表.dll
│ │ │ │ ├── 单项链表.genruntimeconfig.cache
│ │ │ │ └── 单项链表.pdb
│ │ │ ├── project.assets.json
│ │ │ ├── project.nuget.cache
│ │ │ ├── 单项链表.csproj.nuget.dgspec.json
│ │ │ ├── 单项链表.csproj.nuget.g.props
│ │ │ └── 单项链表.csproj.nuget.g.targets
│ │ └── 单项链表.csproj
│ └── 单项链表.sln
└── 好例子网_单项链表.zip
12 directories, 31 files
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论