![](https://img-blog.csdnimg.cn/20191019214739405.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法
E.Hero MADAO
MADAO一定会开花
展开
-
取得单链表中间元素
配套的单链表在另一篇博客。 和上一篇快慢指针原理基本相同。 核心问题就是下面的那个While判断条件,和最下面的奇数链表和偶数链表的问题。 然后是判断单链表的元素个数是奇数还是偶数的问题,观察我下面画的表。当元素个数为奇数的时候,First停止时,Second位置正好就是中间的位置,问题是元素个数为偶数的时候,First停止时,中间有两个位置,我选择的返回的是第二个位置。 ...原创 2019-10-19 23:59:11 · 302 阅读 · 0 评论 -
找出单链表倒数第XXX位的元素
配套的单链表在另一篇博客。 这个问题,可以用快慢指针来做,C++叫快慢指针,C#的话姑且叫快慢引用? 方法原理说白了就是让两个引用差开XXX个位置,即让第一个指针先走xxx位,第二个指针先原地不动,等第一个引用往前移动完了,然后再让第一个引用和第二个引用同时走,等第一个引用移动到最后一位的时候,此时,第二个引用所在的单链表的位置就是导倒数第XXX位的元素所在的位置,返回这个引用即可。 ...原创 2019-10-19 22:51:27 · 144 阅读 · 0 评论 -
单链表反转
配套的单链表实现在另一篇博客。 因为是C#来解决的嘛,这个问题解决的话,所以用While循环和三个引用来做。 /// <summary> /// 反转链表 /// </summary> public Link<T> ReversalLinkList() { ...原创 2019-10-19 22:28:13 · 133 阅读 · 0 评论 -
【C#数据结构】单链表
C#实现 首先,构造一个单链表的节点类: class Link<T> { public T Data; public Link<T> Next; /// <summary> /// 构造函数 /// </summary> /// &l...原创 2019-10-19 22:24:39 · 151 阅读 · 0 评论