二叉树的遍历是在面试使比较常见的项目了。对于二叉树的前中后层序遍历,每种遍历都可以递归和循环两种实现方法,且每种遍历的递归实现都比循环实现要简洁。下面做一个小结。 一、中序遍历 前中后序三种遍历方法对于左右结点的遍历顺序都是一样的(先...
阅读(5) 评论(0)
在遇到维度灾难的时候,作为数据处理者们最先想到的降维方法一定是SVD(奇异值分解)和PCA(主成分分析)。 两者的原理在各种算法和机器学习的书籍中都有介绍,两者之间也有着某种千丝万缕的联系。本文在简单介绍PCA和SVD原理的基础上比较了...
阅读(4) 评论(0)
20天的时间参加了Kaggle的 Avito Demand Prediction Challenged ,第一次参加,成绩离奖牌一步之遥,感谢各位队友,学到的东西远比成绩要丰硕得多。作为新手,希望每记录一次可以进步一次。下面将我这段时...
阅读(6) 评论(0)
碎碎念: 最近终于开始刷middle的题了,对于我这个小渣渣确实有点难度,经常一两个小时写出一道题来。在开始写的几道题中,发现大神在discuss中用到回溯法(Backtracking)的概率明显增大。感觉如果要顺利的把题刷下去,必须先...
阅读(32) 评论(0)
特征选择是一个重要的数据预处理过程,在现实机器学习任务中,获得数据之后通常先进行特征选择,此后在训练学习器,如下图所示: 进行特征选择有两个很重要的原因: 避免维数灾难:能剔除不相关(irrelevant)或冗余(redundant...
阅读(27) 评论(0)
high-cardinality categorical attributes,从字面上理解,即对于某个category特征,不同值的数量非常多,这里暂且把它叫做高数量类别属性。反之,即低数量类别属性(low-cardinality)...
阅读(92) 评论(0)
终于刷完了leetcode的前250道题的easy篇。好吧,其实也就60多道题,但是其中的套路还是值得被记录的。 至于全部code,请移步github,题目大部分采用python3,小部分使用C,如有问题和建议,欢迎指正。 String...
阅读(45) 评论(0)