第一周leetcode
3/27 胡乱投了一堆简历,做了七牛的笔试,看了腾讯的面试题
感觉不懂的还是很多啊,不过也知道了笔试套路其实也不多,基本算法/数据结构(不会太难)、c/c++基础(后面的知识类似虚函数需要了解)、linux及多线程、网络和HTTP、数据库
这周本来想做完华为的精英赛题,感觉很有把握的,结果电脑联网报废了,linux环境也GG了,心情略差
开始做leetcode,挺慢的,希望以后进度提快
1.Two Sum
给一个vector<int> nums 和一个int k,求nums[i]+nums[j]=k时的return [i , j],需要注意是i,j和要最小, 知识点:vector.size()
292.Nim Game
找规律的题 隔4取一次 ,记住就行了
8.String to Integer(atoi)
string转换为int,本身并不难,但是边界条件很多:1.允许开头*个空字符,允许开头有'-''+'2.不允许数字中出现除'0'-'9'以外的字符3.结果大于MAX小于MIN返回MAX个MIN
388.Counting Bits
给一个k,return从0到k每个值中二进制的1的个数
注意:1.计算二进制中1的个数,难点在于时间复杂度。有三种基本求二进制1个数的方法:
(1)定理求解:取余数的方法,最慢。
(2)基本法(雾):值和1进行&操作,然后>>算术右移,仍然有两个循环。(即为本道题我的解法)
(3)快速法:n和n-1进行&操作,可以消去二进制最右的1,仍然有两个循环。(在191题中的解法)
191.Number of 1 Bits
求一个uint32_t n二进制中1的个数,用快速法
136.Single Number
寻找序列内单个的数。
我的方法(线性时间复杂度,不利用其他空间):先sort一遍排列,和前后两个数都不相等的就是所求,序列长度为1为边界条件
快速方法:所有数按位异或即为结果(因为异或满足结合律)
知识点:vector.begin() vector.end()
104. Maximum Depth of Binary Tree
求二叉树深度,很久没做递归了,画了一下还是写出来了,但是有个结果submit一直报错,但是run code里没问题
原因:用C写的时候在函数外面设置了变量(实际上是全局变量),改为C++后设置为class中的private就好了
258. Add Digits
第一个看的leetcode题,初见O(1)吓到了我,原来是数学法则(高级找规律)return (num-1)%9 + 1;
226. Invert Binary Tree
翻转二叉树,我意识到对C++需要了解的不是奇技淫巧,而是踏实的重载、多态、继承、虚函数等,这样的题目反而简单
最后3道题做完了但是没copy代码到blog上。
第一周leetcode的更多相关文章
- 第一周 Leetcode 57. Insert Interval (HARD)
Insert interval 题意简述:给定若干个数轴上的闭区间,保证互不重合且有序,要求插入一个新的区间,并返回新的区间集合,保证有序且互不重合. 只想到了一个线性的解法,所有区间端点,只要被其 ...
- ARTS第一周
开始进行的第一周. 1.Algorithm:每周至少做一个 leetcode 的算法题2.Review:阅读并点评至少一篇英文技术文章3.Tip:学习至少一个技术技巧4.Share:分享一篇有观点和思 ...
- 第一周 总结笔记 / 斯坦福-Machine Learning-Andrew Ng
课程主页:https://www.coursera.org/learn/machine-learning/home/welcome 收集再多的资料也没用,关键是要自己理解总结,做笔记就是一个归纳总结的 ...
- Surprise团队第一周项目总结
Surprise团队第一周项目总结 团队项目 基本内容 五子棋(Gobang)的开发与应用 利用Android Studio设计一款五子棋游戏,并丰富其内涵 预期目标 实现人人模式:2个用户可以在同一 ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 20145206邹京儒《Java程序设计》第一周学习总结
20145206 <Java程序设计>第1周学习总结 教材学习内容总结 1.三大平台:Java SE.Java EE与Java ME.Java SE是各应用平台的基础,分为四个主要的部分: ...
- 20145304 刘钦令 Java程序设计第一周学习总结
20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337《JAVA程序设计》第一周学习总结
# 20145337 <Java程序设计>第1周学习总结 ## 教材学习内容总结 第一章 -Java最早是Sun公司撰写Star7应用程序的程序语言 -根据应用领域不同,有Java SE. ...
随机推荐
- 转--NLTK的内置函数
NLTK的内置函数 1. 词语索引 (1) concordance函数 给出一个指定单词每一次出现,连同上下文一起显示. >>>text1.concordance('monst ...
- js基础篇string&&array(应YX同学面试复习要求 - -)
js中的数据类型一共有五个基本数据类型,分别是undefined,null,boolean,number,string. js中的Object类型中包括两大类型:Function类型和array类型. ...
- debian的甘特图工具
sudo apt-get install planner
- 2018-2019学年第一学期Java课程设计
目录 Magic-Towers 一.团队课程设计博客链接 [团队博客地址](https://www.cnblogs.com/lmb171004/p/10271667.html 二.个人负责模块或任 ...
- request 里面参数设置 (有空瞄下)
Requests 是用python语言编写的第三方库,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,完全满足 HTTP 测试需求, ...
- Python将数据写入excel或者txt,读入csv格式或xls文件,写入csv(写一行空一行解决办法)
1.写入excel,一开始不需要自己新建一个excel,会自动生成 attribute_proba是我写入的对象 import xlwt myexcel = xlwt.Workbook() sheet ...
- Java-Runoob-高级教程-实例-字符串:05. Java 实例 - 字符串反转
ylbtech-Java-Runoob-高级教程-实例-字符串:05. Java 实例 - 字符串反转 1.返回顶部 1. Java 实例 - 字符串反转 Java 实例 以下实例演示了如何使用 J ...
- 在eclipse中使用mybatis-generator自动创建代码
1.eclipse中安装插件,地址:http://mybatis.googlecode.com/svn/sub-projects/generator/trunk/eclipse/UpdateSite/ ...
- Executors中的几种线程调用方式
一.Executors是java5以后提供的一套api,使用跟上面非常方便.Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线 ...
- Autofac log4net Integration Module
log4net Integration Module While there is no specific assembly for log4net support, you can easily i ...