自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 KMP算法中的NEXT[ ] 数组手算方法(严蔚敏版本)

如:aba,已经知道我们需要计算‘aba’的next数组,已知‘ab’的next数组在‘b’这位置的值为1,那么我们这样画一个括号,即‘ab)a’,来计算‘)’后的a的next数组的值,这样方便看。在第二个b前画个括号,即‘abaa)b’,前缀为第一个‘a’,后缀为第三个‘a’,已经知道了第四个索引(第三个‘a’)位置的next数组的值为2,所以我们要匹配从前缀开始数的前两个元素,即'ab',同理,从后缀开始数两个元素'aa'(,所以在‘abaab’索引为5即第二个‘b’的位置的next数组的值为2。

2025-04-01 12:05:00 795

原创 带头结点的单链表(C语言)

带头结点的单链表是一种特殊的单链表数据结构,其特点是链表的第一个结点是一个特殊的结点,称为头结点(header node)。头结点不存储实际数据,主要用于方便链表的操作和管理。特点头结点的存在:头结点位于链表的最前端,它不存储实际的数据元素,仅用于标识链表的开始位置。指针域的指向:头结点的指针域指向链表的第一个实际数据结点,即首元结点。操作的统一性:由于头结点的存在,对于链表的插入、删除等操作,无论是在链表头部、中间还是尾部进行,其操作方式都是一致的,无需对头结点进行特殊处理。优势。

2025-03-26 08:56:36 1512

原创 栈的递归调用(C语言)

递归通常把一个大型的复杂问题层层转化为一个与原则问题相似的规模较小的问题来求解,递归策略只需要少量的代码就可以描述出解题过程所需要的多次重复计算,大大减少了程序的代码量。但在通常情况下,它的效率并不是太高。递归的效率低下,但优点是代码简单,容易理解。太多层的递归可能会导致栈溢出,因为递归调用可能包含了很多的重复计算,可以理解为树的深度优先遍历。简单来说,若在一个函数、过程或数据结构的定义中又应用了它自身,则这个函数、过程或数据结构称为是。注意,factorial()这个函数是专门用来算阶乘的。

2025-03-21 09:12:18 641

空空如也

空空如也

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

TA关注的人

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