- 博客(1517)
- 问答 (5)
- 收藏
- 关注
原创 【LeetCode】498.对角线遍历
无论何时何地,我都认为对于一道编程题,思考解法的时间用于是实际动手解决问题的2倍!如果敲键盘编码需要5min,那么思考解法的过程至少就需要10分钟。
2024-12-04 21:50:54
525
原创 【经典论文阅读11】ESMM模型——基于贝叶斯公式的CVR预估
传统的CVR模型(也就是直接对conversion rate做建模的模型)在实际应用中面临两个问题(样本选择偏差问题、数据稀疏性的问题)。为了解决这两个问题,提出来ESMM模型,这个模型巧妙了用用户行为序列去建模这个问题,从而证明对Post-click conversion Rate 非常有帮助(在淘宝的业务场景下)。需要注意的是,本文是估计Post-click Conversion Rate(其实真实思想就是基于贝叶斯公式去预估CVR。)
2024-10-26 15:56:50
1797
1
原创 【LeetCode】228.汇总区间
这种题的关键处在于:巧妙地添加一个元素,避免了遍历后的特殊处理。这是一类题目,一定要记着对最后一个元素做判断。
2024-10-19 15:11:04
372
原创 一文搞懂python的json与字符串的操作
json.dumps和json.dump是什么区别?json.load()和json.loads()又是什么区别?这些小知识点如果不清楚,非常影响开发代码的效率。
2024-10-01 16:57:12
286
原创 【LeetCode】289.生命游戏
如何原地对数组进行修改是比较困难的,递归的算法无法做到。那有什么方式能简化吗?可以设计多种数字用于记录细胞的状态,不同的数字记录了不同的时刻和状态,从而简化了题目。
2024-09-22 21:02:16
445
原创 【LeetCode】146. LRU缓存
其实本质上,这题考察的是如何实现Python中的Orderdict这个数据结构,因为OrderDict就是一个LRU cache。要实现lru cache,可以利用dict(字典)和 Double Linked List (双向链表)即可。
2024-09-22 17:06:59
625
原创 【LeetCode】 Z 字形变换
本题初看是有点儿麻烦的,因为有个N型的变换,但是如果把这个N型压缩一下,其实就是考虑每行放什么值的问题。那么问题就简化成当前的字符串的字符需要放在哪一行?做一个处理就ok了。充分地思考问题,然后得出抽象解,最后再写代码。
2024-09-07 13:32:14
437
原创 【LeetCode 121】买卖股票的最佳时机
本题的思想在于逢低买入,如果碰到比之前买入价格更低,那么对于后面每天的价格来说,之前的买入价都不会是最优价了。虽然是道简单题,但有单调队列的思想在其中。
2024-09-07 10:44:01
390
原创 你不知道的逻辑回归
逻辑回归是机器学习中最基础、最简单的模型了,但是对于它的细节知识你是真的了解吗?本文详细解释了为什么逻辑回归用的是交叉熵损失而不是均方误差。
2024-09-06 10:44:23
1524
原创 判断母串是否包含子串的某种排列
通过Counter+循环的方式判断是否匹配成功。匹配成功的标志就是剩余待匹配字符的个数,如果个数已经为0了,那么就说明母串确实包含子串的某种排列,直接返回结果。相比面试老师说的滑动窗口,这个解法应该是比滑动窗口简洁的。
2024-09-03 08:23:55
280
1
原创 【LeetCode】452.用最少数量的箭引发气球
能够找到问题的解法与把问题足够简化是天壤之别。比如我知道这题可以用贪心算法来解决,但是代码实现的过程中就走上了复杂的路,但是官方题解给的代码则相当简洁。这说明我思考的不够深入,导致化繁为简的能力不够强。
2024-08-13 22:50:25
288
原创 【LeetCode】148.排序链表
这是一道很好的面试题。考察了链表、排序等基本数据结构的使用。同时还融合了递归(分治)的思想。同时分析归并排序的复杂度也不是一件很轻松的事情,值得学习。
2024-08-11 10:04:49
257
原创 【LeetCode】45.跳跃游戏II
如果对于贪心算法不熟悉的话,这道题挺难想的。我一直认为关键点在于:如何把某段区间里面的值都给改成相同的步数,甚至想到了前缀和差分。但其实并不用那么麻烦。只需要维护在到达本次最远位置之前能达到的最远位置即可。每次到达最远位置后便更新一下step,最后返回step。
2024-08-04 11:46:00
445
1
原创 【LeetCode】33.搜索旋转排序数组
说实话,这道题挺难想的。难点在于,数组非完全有序就会让人产生错觉(这道题无法二分)。的复杂度,那我觉得我肯定不会想到。基于这个性质,可以得到下面这个代码。
2024-08-04 00:37:35
299
1
原创 【LeetCode】108. 将有序数组转换为二叉搜索树
这虽然是一道简单题,但是考察的点还挺丰富,二分法,递归,平衡二叉树都考察到了。是一道不错的面试题。
2024-08-03 08:50:50
366
原创 【LeetCode】202.快乐数
不要觉得是简单题就懒得思考了。一名优秀的程序员应该主动将时间复杂度、空间复杂度都调至最优!本题其实是快慢指针非常好的一个应用。
2024-08-02 22:11:10
422
原创 【LeetCode】16. 最接近的三数之和
三数之和这道题被反复考到,但是我一次都没给写出来,真是汗颜!本题是三数之和的一道变形题,也是一道好题!本题有两个关键点:其一,双指针是怎么个用法?在本题中是怎么实现的?其二,如何判断要终止当前的这轮迭代?(与target这个值进行比较,决定该怎么迭代查找。)
2024-07-30 20:32:26
172
原创 【python基础知识】整除
熟练使用你所常用的开发语言是一个非常基本的要求。如果你日常需要使用Python,但是你对向上取整,向下取整,以及Python中的默认实现方式是什么都不知道的话,那么我就需要怀疑你的专业能力了。
2024-07-21 18:48:15
807
原创 【LeetCode】67. 二进制求和
何为基本功?对一个语言基本函数库的熟悉就是基本功的体现,对底层计算机知识的了然于胸就是基本功。作为一名程序员,你要对你常用的语言要非常熟悉,知道每个API是什么意思,直到有哪些实现的函数,只有做到这些,才有可能称得上专业。
2024-07-20 12:03:38
240
原创 【LeetCode】222. 完全二叉树的个数
什么是计算机基础?如果本题能够用二分+二进制+二叉树的方式解出本题,那么我可以认为你的计算机基础好。很久以来,我一直认为自己的计算机基础好,但是自刷题以来,跟网上这么多优秀的同学相比,我发现我实在是弱爆了。
2024-07-20 08:30:38
305
1
原创 【LeetCode】162. 寻找峰值
本题是一道优秀的二分算法题目。优秀的地方在于,一改传统二分法的判断标准(以前后元素的值比较为标准)。同时为了将代码变得优雅,需要对代码进行一个trick处理。
2024-07-17 23:38:24
547
原创 【python基础知识】字符和ASCII码表值间的转换
在python中如何将字符和ASCII码表值互相转换呢?涉及到两个函数,分别是ord和chr函数。
2024-07-14 12:37:50
278
原创 【LeetCode】205. 同构字符串
认真地分类讨论,评判复杂度,再决定是否要写代码执行。整套流程干净利落,不存在主观臆想,也不会有对事实结果计算的巨大偏差。
2024-07-13 09:36:14
324
空空如也
Hadoop中jps命令出现Command not found
2018-01-21
Hadoop执行命令出现警告
2018-01-20
怎么判断TextBox的输入数据在查询的结构数据集中
2016-09-14
FTP怎么在资源管理中打开
2016-05-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人