2 范天祚

我要认证

腾讯总部工作,欢迎面基

等级
TA的排名 78

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

初衷每个初入社会的求职者,都曾经有过找工作被坑的经历。总结了以下潜台词,如果你能全部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

leetcode369. 给单链表加一

用一个 非空 单链表来表示一个非负整数,然后将这个整数加一。你可以假设这个整数除了 0 本身,没有任何前导的 0。这个整数的各个数位按照 高位在链表头部、低位在链表尾部的顺序排列。示例:输入: [1,2,3]输出: [1,2,4]思路:help():计算本位的数字,然后返回进位(0或1)plusOne():因为help方法无法判断自己是否是最高位,所以在本方法中做一下处理。如果有进位,就再加一位最高的1即可。/** * Definition for singly-li.

2020-05-30 14:21:50

leetcode557. 反转字符串中的单词 III python,处理字符串的神!

给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例1:输入: "Let's take LeetCode contest"输出: "s'teL ekat edoCteeL tsetnoc"注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。思路:python处理,先split分割为列表,再用列表生成式把每一项翻转,再用join拼起来即可。class Solution: def reverseWords(self,..

2020-05-28 23:43:26

【精品计划 附录1】那些必须知道的神级算法大盘点

第一节1.1bogo排序Bogo排序(Bogo-sort),又被称为猴子排序,是一种恶搞排序算法。将元素随机打乱,然后检查其是否符合排列顺序,若否,则继续进行随机打乱,继续检查结果,直到符合排列顺序。Bogo排序的最坏时间复杂度为O(∞),一辈子也不能输出排序结果,平均时间复杂度为O(n·n!)。这让我想到了另一个理论:猴子理论,只要让一只猴子一直敲打计算机,理论上会有一天,它能敲出一本圣经出来,但是这个概率小到宇宙毁灭也很难敲出来。。真的不知道这个排序应该叫做天才还是垃圾哈哈哈,但是

2020-05-25 08:48:38

c++ STL迭代器实例

1、vector#include <iostream>#include <vector>using namespace std;int main(int argc, char* argv[]){ // Create and populate the vector vector<int> vecTemp; for (int i = 0; i<6; i++) { vecTemp.push_back(i); } // Dis

2020-05-22 09:58:01

go语言快速刷《程序员面试金典》(3)

编写程序以 x 为基准分割链表,使得所有小于 x 的节点排在大于或等于 x 的节点之前。如果链表中包含 x,x 只需出现在小于 x 的元素之后(如下所示)。分割元素 x 只需处于“右半部分”即可,其不需要被置于左右两部分之间。示例:输入: head = 3->5->8->5->10->2->1, x = 5输出: 3->1->2->10->5->5->8一趟分离,然后连起来即可。/** * Definition f

2020-05-18 22:44:17

go语言快速刷《程序员面试金典》(2)

字符串轮转。给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成(比如,waterbottle是erbottlewat旋转后的字符串)。示例1输入:s1 = "waterbottle", s2 = "erbottlewat"输出:True示例2输入:s1 = "aa", "aba"输出:Falsefunc isFlipedString(s1 string, s2 string) bool { return len(s1) == len(s2) &&amp.

2020-05-18 20:02:44

查看更多

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