FP 树的节点链结构,挺适合搞关联规则挖掘的。尤其你用过FP-Growth算法,就知道它不用频繁扫描数据库,效率是真的高。每个频繁项都挂在对应的链上,要找某个项的所有组合,顺着链走一遍就行,简单粗暴但还挺有效。

FP-Growth 的实现,Java 那版还不错,逻辑清晰,代码也不臃肿。你可以看下Java 中的 FP-Growth 算法实现这篇文章,基本能跑起来。要是做课程设计,顺带看看Apriori 与 FP-Growth 项目练习,思路上会更开阔。

哦对了,还有个比较全的应用项目,结合了JSPServletEChartsPython爬虫,整合到推荐系统里,蛮有意思的。传送门在这里。如果你也在做协同过滤,值得借鉴一下。

不想用传统方式,还能试试基于MAXFP-Miner的改进方案,效率提升挺,点这里看基于 FP-Tree 的创新方法。另外,关于 FP-Tree 结构理解,这篇英文比较直观,没太多废话。

如果你正好研究频繁项集,尤其是用 FP 树那一套,可以先搞清楚每条节点链的作用,再挑一两个项目练练手,思路比照着文档啃代码快多了。