RodneyX

博客园 首页 新随笔 联系 订阅 管理

2025年7月26日 #

摘要: 简单插入排序的基本思想: 设待排序表为L[0...n-1],初始时子表L[0]为有序表 对于剩下长度为n-1的有序表L[1...n-1],将每个元素插入L前面的有序表中恰当的位置,保持L前部有序,即找到位置p,然后将L[p]以及有序表中L[p]以后的元素向后移动一个位置,最后将这个元素放到L[p] 阅读全文
posted @ 2025-07-26 15:04 RodneyX 阅读(17) 评论(0) 推荐(0)

2025年7月25日 #

摘要: 二叉树线索化最简单的就是中序了,无脑按照中序遍历递归算法套就OK了。 现在我们有如下代码实现 //file:threadBiTree.h #ifndef THREAD_BI_TREE_H #define THREAD_BI_TREE_H typedef struct threadBiNode { i 阅读全文
posted @ 2025-07-25 11:42 RodneyX 阅读(26) 评论(0) 推荐(0)

2025年7月21日 #

摘要: 笔者在两年前初学KMP算法时遇到非常大的障碍,关键是没看懂转移方程的原理,现在先谈谈这个(本文可能存在某些不标准的叙述) 首先明确一下,对于构造next[]数组我们并不关心主串的信息,KMP的精髓在于利用模式串可能存在的前后自相似特征来决定模式串指针的回溯方式 考虑一个模式串p[] = "aabaa 阅读全文
posted @ 2025-07-21 11:56 RodneyX 阅读(23) 评论(0) 推荐(0)

2025年7月20日 #

摘要: 要谈单栈实现二叉树后序遍历,就得先说说二叉树中序非递归遍历 基本思路是 设置一个指针current指向二叉树根 设置一个栈 让current入栈并且一直往左走,走一步,只要不空就入栈这个p 当不能往左走时就弹出栈顶,转向右子树进行中序遍历(就是对右子树执行上面的流程,其实就是把一个递归过程直接用循环 阅读全文
posted @ 2025-07-20 20:18 RodneyX 阅读(38) 评论(0) 推荐(0)