Hi! 我是李文举.

一名AI算法工程师,热爱生成式模型和具身智能.

快速排序的简洁好记的代码


快速排序作为经典的排序算法,使用场景很多。比如寻找数组中第K大的数。

虽然核心思想一致,但是不同的快速排序写法,细节还是不同,一不小心就会搞错。这里给的代码,是相对简洁好记的。

阅读全文 »


链表判定环的入口和相交链表判定交点


这两道题都有一个双指针的解法,而且要理解双指针解法,都需要画图进行一定的数学分析,所以放在一起做个对比分析,加深记忆。

阅读全文 »


使用迭代进行二叉树前序和中序遍历


总结比较一下迭代进行二叉树前序和中序遍历时代码的差异。

阅读全文 »


IRT模型中的项目信息函数解读


之前一直困惑于IRT模型的项目信息函数的含义。看了李政轩老师的Item and Test Information Function视频,总算搞清楚了。这里做一个简要的记录。

阅读全文 »


静态链接分析指引


目标文件想要变成可执行文件,还需要进行链接。本文会介绍链接的基础版:静态链接。

从例子说起

为了说明什么是链接,我们先准备好例子,通过例子分析。

阅读全文 »


ELF文件分析(一)


ELF是linux下目标文件的格式。学会分析ELF文件,是提升计算机学科素养的必要条件。 ELF文件格式本身有很多细节,初学者很容易一叶障目、不见泰山。 本文是我学习ELF文件后做的总结,目标是提供一个大的指引,力图构建一个ELF文件的宏观分析框架。

阅读全文 »


ELF文件分析(二)


ELF文件分析(一)中,我们大概了解了ELF文件的结构,知道了ELF文件由文件头和段组成。今天我们继续学习ELF文件的链接。

段的具体结构

上篇文章中,我们知道段表中存储着每个段的基本信息,这些基本信息用一个叫段描述符的结构来组织。 想要查看段描述符的结构,可以在linux系统/usr/include/elf.h文件中搜Elf32_Shdr,如下所示:

阅读全文 »


正则表达式匹配


leetcode题目链接:这里

总结一下自己从这道题中学习到的几个要点。

一、要考虑”空”这种情况

字符串匹配,要考虑空串的情况,本题中,考虑了空的情况后,在代码上会有两个地方体现。第一个就是初始化矩阵f时,其维度要比字符串长度大1,位置0表示 的就是字符串长度为0的情况。 第二个就是,在使用动态规划填充矩阵f时,矩阵的索引和字符串的索引对应关系会容易搞错。矩阵中的索引1,对应的字符串的索引就是0。 这一点在计算两个字符串的编辑距离时也有体现。

阅读全文 »


相关链接