在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例C#语言基础 → 单/双向链表基础

单/双向链表基础

C#语言基础

下载此实例
  • 开发语言:C#
  • 实例大小:0.17M
  • 下载次数:11
  • 浏览次数:105
  • 发布时间:2022-02-17
  • 实例类别:C#语言基础
  • 发 布 人:ZINGU
  • 文件格式:.zip
  • 所需积分:1
 相关标签: 链表 基础

实例介绍

【实例简介】单/双向链表基础

链表

【实例截图】

from clipboard

【核心代码】

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


标签: 链表 基础

实例下载地址

单/双向链表基础

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警