2 范天祚

我要认证

在腾讯总部核心部门工作,欢迎面基,请多指教

等级
TA的排名 74

《三天给你聊清楚redis》第2天看看redis怎么被搞出来的(22036字)

后端需要知道的关于redis的事,基本都在这里了。

2020-07-14 09:03:06

万字干货:教新手从0到1搭建完整的增长数据体系

在实际的业务中,大多数人可能只会遇到以下一种或几种常见的场景,并且对于各个细分场景,所需要解决的问题和关注重点都是不一样的。场景一:你刚加入一个成熟产品的用户增长部门,会发现业务当前有非常全面详实的用户和业务数据,但由于个人缺少数据分析的经验,面对一堆数据,除了能简要了解到产品基本情况,不知如何从数据中挖掘出更有价值的信息。 待解决问题:面对大量数据,不知如何入手分析。 所需的能力:各种可以从数据分析中找到增长线索的方法论。 场景二:你熟练掌握了基本的数据分析技能,能够基于现有数据找到增.

2020-07-14 01:00:57

(acm)C++加速输入的几种方法

1.C++IO流的同步和绑定在C++中,cin和cout的速度其实不并不慢,C++中的流的IO速度相当的快,其速度与初始设定的缓存区大小和硬盘的IO速度有关。但在C++中,为了兼容C的IO(scanf和printf),cin和cout被设置为与C的IO同步,这样导致cin和cout的速度不如scanf和printf快。另外,在默认情况下,标准输入设备(cin)与标准输出设备(cout)绑定在一起,它保证在调用输入之前已经刷新输出缓冲区,这样也会降低读取效率。所以,我们可以手动取消他们与C语言

2020-07-10 21:33:48

使用PicGo+github+jsdelivr作为图床

1.什么是图床?所谓图床工具,就是自动把本地图片转换成链接的一款工具,网络上有很多图床工具,就目前使用种类而言,PicGo 算得上一款比较优秀的图床工具。它是一款用Electron-vue开发的软件,可以支持微博,七牛云,腾讯云COS,又拍云,GitHub,阿里云OSS,SM.MS,imgur 等8种常用图床,功能强大,简单易用。这里是最新版本的项目发布地址:https://github.com/Molunerfinn/PicGo/releases如果是macos系统,请选择dmg版本下..

2020-07-10 21:32:16

使用github+jsdelivr作为视频床

感谢JefferyIF大佬提供的神奇方法。1. 配置FFmpeg注:IOS因为不支持HLS,所以对IOS上无法正常播放视频,其他端都可以正常播放。因为脚本要使用到FFmeg对源视频文件切分成m3u8格式,所以在使用脚本之前,请配置好FFmpeg,去官网下载并配置好环境变量。下载地址:http://ffmpeg.org/download.html#build-windows选择对应的系统下载,比如我的系统是win10的,就下载window版本的文件。然后,进入环境变量的设置中,找到p.

2020-07-10 21:30:25

《三天给你聊清楚redis》第1天先唠唠redis是个啥(18629字)

后端需要知道的关于redis的事,我保证,基本都在这里了。此文后续会改为粉丝可见,所以喜欢的请提前关注。你的点赞和评论是我创作的最大动力,谢谢。

2020-07-10 19:21:17

一篇文章揭穿创业公司的套路

初衷每个初入社会的求职者,都曾经有过找工作被坑的经历。总结了以下潜台词,如果你能全部GET到,那么恭喜你,已被老板们拉入黑名单。核心「工资4k - 8k」——那工资就是4k「工资上不封顶」——就是说说而已,没人会给你一个月一百万月薪的「美女如云」——我司没有福利,你们员工自己互相给福利吧「大牛云集」——有两个稍微有点经验的程序员「需要你有一定抗压能力」——需要你自愿加班「不强制加班」——需要你自愿加班「弹性工作时间」——上班不弹,下班弹,而且只往后半夜弹「可提供有竞争力的薪酬」

2020-07-10 15:05:32

leetcode700. 二叉搜索树中的搜索

给定二叉搜索树(BST)的根节点和一个值。 你需要在BST中找到节点值等于给定值的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 NULL。例如,给定二叉搜索树: 4 / \ 2 7 / \ 1 3和值: 2你应该返回如下子树: 2 / \ 1 3在上述示例中,如果要找的值是 5,但因为没有节点值为 5,我们应该返回 NULL。就是搜索树的查找。/**...

2020-07-05 16:34:44

leetcode645. 错误的集合

645. 错误的集合难度简单98集合S包含从1到n的整数。不幸的是,因为数据错误,导致集合里面某一个元素复制了成了集合里面的另外一个元素的值,导致集合丢失了一个整数并且有一个元素重复。给定一个数组nums代表了集合S发生错误后的结果。你的任务是首先寻找到重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。示例 1:输入: nums = [1,2,2,4]输出: [2,3]注意:给定数组的长度范围是[2, 10000]。 给定的数组是无序的。记录出...

2020-07-05 16:20:57

leetcode485. 最大连续1的个数 *py:“又是一行就解决了,没意思”

给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含0 和1。输入数组的长度是正整数,且不超过 10,000。思路:先拼成字符串,然后按0分割,再取最大长度即可。class Solution: def findMaxConsecutiveOnes(self, nums: List[int]) -> int: .

2020-06-25 16:48:04

leetcode面试题 02.08. 环路检测

给定一个有环链表,实现一个算法返回环路的开头节点。有环链表的定义:在链表中某个节点的next元素指向在它前面出现过的节点,则表明该链表存在环路。示例 1:输入:head = [3,2,0,-4], pos = 1输出:tail connects to node index 1解释:链表中有一个环,其尾部连接到第二个节点。示例 2:输入:head = [1,2], pos = 0输出:tail connects to node index 0解释:链表中有一个环,其尾部连接到第一个

2020-06-14 18:41:13

leetcode445. 两数相加 II

给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶:如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例:输入:(7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 8 -> 0 -> 7思路:放入栈中再相加。/** * Definit

2020-06-06 02:57:40

【精品计划 附录2】- 算法分析

数学模型1. 近似2. 增长数量级3. 内循环4. 成本模型注意事项1. 大常数2. 缓存3. 对最坏情况下的性能的保证4. 随机化算法5. 均摊分析ThreeSum1. ThreeSumSlow2. ThreeSumBinarySearch3. ThreeSumTwoPointer倍率实验数学模型1. 近似N3/6-N2/2+N/3 ~ N3/6。使用 ~f(N) 来表示所有随着 N 的增大除以 f(N) 的结果趋近于 1 的函数。2. 增长..

2020-05-31 17:06:26

cpp知识汇总(1) 指针vs引用、static、const

引用和指针的区别?指针是一个实体,需要分配内存空间。引用只是变量的别名,不需要分配内存空间。 引用在定义的时候必须进行初始化,并且不能够改变。指针在定义的时候不一定要初始化,并且指向的空间可变。(注:不能有引用的值不能为NULL) 有多级指针,但是没有多级引用,只能有一级引用。 指针和引用的自增运算结果不一样。(指针是指向下一个空间,引用时引用的变量值加1) sizeof 引用得到的是所指向的变量(对象)的大小,而sizeof 指针得到的是指针本身的大小。 引用访问一个变量是直接访问,而指针访

2020-05-31 15:05:34

互联网30年,泡沫如梦

人人都说互联网改变世界,这话没错。但我认为互联网改变的方式,是泡沫。资金,资源,人才因为一堆概念聚在一起,形成一个又一个的泡沫,然后泡沫破裂,大部分人失败,少数能够留下来的,会成为下一个世界的基石。然后再有新的泡沫产生。互联网的历史,就是泡沫浮起和破灭的历史。11993年,美国白宫宣布开始提供“在线服务”,在场的记者面面相觑,不知 “在线服务”和“电话服务”有什么区别。不久,联合国也宣布提供“在线服务”,后知后觉的新闻媒体猛然意识到这或许...

2020-05-31 13:48:46

【中国互联网江湖30年历史】再无风清扬,再有少年郎

0马云退了。在萧山奥体中心,无数阿里人的祝福中,流着眼泪,结束了自己在阿里的最后一天。从此互联网江湖再无风清扬,反而多了一个叫做马云的乡村教师。他临别一挥手,似乎带走了中国互联网的一个时代。20年浮沉,都付笑谈中。30年的中国互联网发展史,或许到了一个需要回头看的节点。1一切的开始,是在80年代。1987年9月14日21时07分,中国第一封电子邮件发出。内容为:Across the Great Wall we...

2020-05-31 12:04:02

leetcode359. 日志速率限制器

请你设计一个日志系统,可以流式接收日志以及它的时间戳。该日志会被打印出来,需要满足一个条件:当且仅当日志内容在过去的 10 秒钟内没有被打印过。给你一条日志的内容和它的时间戳(粒度为秒级),如果这条日志在给定的时间戳应该被打印出来,则返回true,否则请返回false。要注意的是,可能会有多条日志在同一时间被系统接收。示例:Logger logger = new Logger();// 日志内容 "foo" 在时刻 1 到达系统logger.shouldPrintMessag...

2020-05-30 17:44:57

leetcode412. Fizz Buzz

写一个程序,输出从 1 到 n 数字的字符串表示。1. 如果n是3的倍数,输出“Fizz”;2. 如果n是5的倍数,输出“Buzz”;3.如果n同时是3和5的倍数,输出 “FizzBuzz”。示例:n = 15,返回:[ "1", "2", "Fizz", "4", "Buzz", "Fizz", "7", "8", "Fizz", "Buzz", "11", "Fizz",...

2020-05-30 17:33:43

leetcode258. 各位相加

给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。示例:输入: 38输出: 2解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于2 是一位数,所以返回 2。进阶:你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?时间复杂度为O(1)的解法:除个位外,每一位上的值都是通过(9+1)进位的过程得到的,想一下拨算盘进位把整数n看成n样物品,原本是以10个1份打包的,现在从这些10个1份打包好的里面,拿出1个,让它们以9..

2020-05-30 17:13:03

leetcode193. 有效电话号码 正则了解一下

给定一个包含电话号码列表(一行一个电话号码)的文本文件 file.txt,写一个 bash 脚本输出所有有效的电话号码。你可以假设一个有效的电话号码必须满足以下两种格式: (xxx) xxx-xxxx 或xxx-xxx-xxxx。(x 表示一个数字)你也可以假设每行前后没有多余的空格字符。示例:假设file.txt内容如下:987-123-4567123 456 7890(123) 456-7890你的脚本应当输出下列有效的电话号码:987-123-4567(123) ...

2020-05-30 17:11:00

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 推荐红人
    推荐红人
    发布高质量Blink获得高赞和评论,进入推荐栏目即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。