最长不重复子串是leetcode一道经典的题目,要求找出一个字符串中最长不重复子串的长度
C++ INL 文件
.INL
文件是内联函数的源文件。内联函数通常在 C++ 头文件中实现,但有的时候内联函数较多或者出于一些别的考虑,如为了使头文件看起来更简洁等,往往会将这部分具体定义的代码添加到 .INL
文件中,然后在该头文件的末尾将其用 #include
引入。由此也可以看到 .INL
文件的另外一个用法的影子——模板函数、模板类的定义代码的存放。对于比较大的工程来说,出于管理方面的考虑,模板函数、模板类的声明部分一般存放在一个或少数几个文件中,而将其定义部分存放在 .INL
文件中,然后在相应的头文件中包含进来。
卷积计算优化方法:Winograd
在卷积网络中,大部分的计算耗费在计算卷积的过程中,尤其是在端上设备中,对于性能的要求更为苛刻。程序的性能优化是一个复杂而庞大的话题。高性能计算就像系统设计一样,虽然有一些指导原则,但是,对于不同的场景需要有不同的设计方案,因此,对于同一个优化问题,不同的人可能会给出完全不同的优化方案。本文不是探讨硬件和代码级的优化,仅针对计算卷积的一个特定方法 —— Winograd 方法做一个简单的记述。
C++ struct 位域
位域(Bit field)为一种数据结构,可以把数据以位的形式紧凑的储存,并允许程序员对此结构的位进行操作。这种数据结构的一个好处是它可以使数据单元节省储存空间,当程序需要成千上万个数据单元时,这种方法就显得尤为重要。
XGBoost
XGBoost 是机器学习比赛中的大杀器,我之前也了解过许多,于无意中看到一篇关于其总结的文章,想到应该总结一下。本文结合参考文献和一些个人整理的资料,对 XGBoost 相关知识进行总结,力求通俗易懂。