自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 【算法笔记】快慢指针在链表中的应用

1. 判断单链表是否存在环如果链表存在环,就好像操场的跑道是一个环形一样。此时让快慢指针都从链表头开始遍历,快指针每次向前移动两个位置,慢指针每次向前移动一个位置;如果快指针到达NULL,说明链表以NULL为结尾,没有环。如果快指针追上慢指针,则表示有环。2. 在有序链表中寻找中位数快指针的移动速度是慢指针移动速度的2倍,因此当快指针到达链表尾时,慢指针到达中点。程序还要考虑链表结点个数的奇偶数因素,当快指针移动x次后到达表尾(1+2x),说明...

2021-08-04 17:37:29 119

原创 【算法笔记】实现单链表有关功能的基本思路

实现单链表的各种功能的代码中往往绕不开三个要考虑的因素:指针位置,循环内的算法,对头结点的特殊处理。本文将围绕这三个点,从宏观视角上探讨实现单链表各种功能的通用的思路——单链表程序的处理模型。一、指针位置 链表的操作单位是结点,而往往解决问题时,我们指针(以下简写为p)指向的结点与将要操作的结点(假设改结点指针为o)可能不是同一个结点,这便导致了两个指针——p和o有位置上的相对差异。 举个例子,现在我要删除链表中元素为2的结点,那么我会使用指针p...

2021-08-03 16:26:11 197

原创 【算法笔记】关于链表头结点是否需要储存数据的思考

今天听算法网课的时候发现老师构建的链表头指针指向了一个没有数据的结点,即链表的头指针并不储存数据。而学校教材中使用的链表则不存在这样的特殊的头结点。于是我开始纠结使用哪一种形式创建链表,毕竟链表的写法不同,后续对链表的操作写法也不同。后得出结论:如果头结点不储存数据,那做插入删除等操作时,不必考虑改动头结点的情况,变动的结点永远是后继的结点。只不过在编写链表的操作时,常常要时指针指向第二结点而不是链表首地址。 如果头结点储存数据,虽然不用特殊对待头结点,...

2021-07-30 18:11:31 5149

原创 【算法笔记】暴力匹配双重循环的循环条件总结

暴力匹配中常常会用到双重循环,而匹配的形式不同,循环的条件也会不同。以下时两种暴力匹配的形式。1.有序匹配:即匹配(a1,a2)不等同于(a2,a1)。则使用以下循环;for(i=0;i<n;i++){ for(j=0;j<n;j++)}2.无序匹配:即匹配(a1,a2)等同于(a2,a1)。则使用以下循环;for(i=0;i<n-1;i++)...

2021-07-29 15:43:31 350

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除