左耳听风-ARTS-第2周(2019/3/31-2019/4/6)
Algorithm
验证括号题(https://leetcode.com/problems/valid-parentheses/)。这道题在极客时间上覃超的《算法面试通关40讲》(https://time.geekbang.org/course/intro/130)上看过这道题,主要的思想是用压栈、出栈来判断括号的匹配,正确的情况只有一种,判断完字符串后,栈为空。
public boolean isValid(String s) {
if (s == null) {
return false;
}
if (s == "") {
return true;
}
Stack<Character> stack = new Stack<>();
char[] chars = s.toCharArray();
for (char c : chars) {
if (stack.isEmpty() || c == '(' || c == '[' || c == '{') {
stack.push(c);
} else {
Character top = stack.pop();
if ((c == ')' && top == '(') || (c == ']' && top == '[') || (c == '}' && top == '{')) {
continue;
} else {
return false;
}
}
}
return stack.isEmpty();
}
Reading
《The Greatest Developer Fallacy Or The Wisest Words You’ll Ever Hear?》链接是https://skorks.com/2011/02/the-greatest-developer-fallacy-or-the-wisest-words-youll-ever-hear/
这篇文章是陈皓推荐的,并且在他的博客中翻译成了中文(https://coolshell.cn/articles/4235.html)。“当我需要时我会去学”,这是句比较流行的话,也是我很长一时间的心里话,也是今天不去学习的借口。文中作者仔细论述了这句话的害处和正确的做法、正确的结果。
第一部分作者描述了自己担忧的一种情况,很多开发者不深入了解技术,只是在需要的时候再去学、再去查,美名为实用者,因为技术实在进步的太快了,我觉的如果这样的开发的结果不错,真的需要很强的阅读能力和学习能力。但是,作者完全否定这种思维方式,在第三部分给予了反驳。第二部分描述的第二种不好的情况,投资自己的职业未来,可能每个人都误认为在投资自己的未来,从实际效果来看,并不是这样,作者认为的原因可能是缺乏成为专家的意愿而不是知识。第三部分作者着重表述了实际上我们不知道我们不知道的东西,所以“当我需要时我会去学”这句话其实很难起效果,实际的情况是我们到时难受、煎熬,但找不到解决问题的有效方法,纵然最后完成了任务,市级上优化的空间很大,甚至是几何级的优化空间。快速的浏览一些主题并不能在我们的大脑中留下什么,这完全是浪费时间。而深入的专研一门技术,可以让我们成为专家,同时让我们在这一过程中成为其他学科的专家,知识、技术不是孤立,而是网络,我们深入专研的技术会牵扯出其他需要深入研究的知识。第四部分作者描述了学习的快慢问题,用之前看到的一句话来描述就是,值钱的技术都不是一天两天能学会的,需要很长时间,需要提前准备。第五部分作者描述,我们都喜欢和高手一起工作,但高手喜欢也和高手一起工作,我们只有深研技术,成为专家,高手才会找到你和你一起工作。
Tip
公司项目中修改之前的代码时,发现了一个http请求的工具类,使用到了HttpClient库,在使用HttpPost时,把本来放在body中的请求参数设置在了HttpPost.setParams()中,导致了错误结果,查看文档后发现,这个方法设置的是整个HttpClient的配置参数,本意不是用来设置POST请求的body参数的。body参数正确的设置方法是HttpPost.setEntity(HttpEntity entity)。
Share
Java泛型相关总结(下), https://www.cnblogs.com/minguo/p/10666976.html
左耳听风-ARTS-第2周(2019/3/31-2019/4/6)的更多相关文章
- 一切从这里起始(左耳听风 ARTS 6号小组 week 1)
ARTS 具体要求: 1.每周至少做一个 leetcode 的算法题2.阅读并点评至少一篇英文技术文章3.学习至少一个技术技巧4.分享一篇有观点和思考的技术文章 1.Algorithm Two Sum ...
- 左耳听风 ARTS Week 001
要求:1.每周至少做一个 leetcode 的算法题 2.阅读并点评至少一篇英文技术文章 3.学习至少一个技术技巧 4.分享一篇有观点和思考的技术文章 1.每周至少做一个 leetcode 的算法题 ...
- 左耳听风 ARTS Week 002
要求:1.每周至少做一个 leetcode 的算法题 2.阅读并点评至少一篇英文技术文章 3.学习至少一个技术技巧 4.分享一篇有观点和思考的技术文章 1.每周至少做一个 leetcode 的算法题 ...
- 【ARTS】01_21_左耳听风-201900401~201900407
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_20_左耳听风-20190325~20190331
zz## ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 ...
- 【ARTS】01_19_左耳听风-20190318~20190324
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_18_左耳听风-20190311~20190317
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_17_左耳听风-20190304~20190310
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_16_左耳听风-20190225~20190303
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_14_左耳听风-20190211~20190217
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
随机推荐
- Linux 安装Python37
1.下载python3.7.0 https://www.python.org/downloads/release/python-370/ 2.创建Linux的python37目录 mkdir /usr ...
- Docker搭建LNMP网站平台
1.自定义网络 [root@linux-docker01 ~]# docker network create lnmp 67e7e0736b2c58f8f81eed50130803b34be0583f ...
- angular4 富文本编辑器
使用quill富文本编辑器实现,angular项目中用到了ngx-quill插件. quill的GitHub地址:https://github.com/quilljs/quill ngx-quill的 ...
- for ,foreach ,map 循环的区别
一.for循环 1.for - 循环代码块一定的次数 遍历数组最常用到的for循环,是最为熟知的一种方法 for (var i=0; i<5; i++) { x=x + "The nu ...
- python定时脚本判断服务器内存
经常我们会发现服务器跑着跑着内存使用率达到了百分之八九十,或者有时候直接挂掉,在我们还没定位是哪块代码有问题导致内存占用很大的时候,可以先写个定时脚本,当服务器内存使用率达到一定值的时候,就重启一起服 ...
- 2018-CVTE中央研究院-自然语言处理算法工程师-电话初面问题
楼主NLP初学者一名,有幸参加2018年CVTE中央研究院自然语言处理电话面试,问题总结如下: 1.详细的介绍自己的学术论文(感觉他们非常重视这块),会问你网络的具体构造,注意力机制如何计算以及为何你 ...
- Ubuntu中的出现:主文件夹的内容跑在桌面显示解决方案。同时 vim编辑器的操作
在终端窗口进入中文件夹 输入命令:cd .config/ 然后找到user-dirs.dirs 输入命令:vim user-dirs.dirs 在vim中安 i 即可进行插入操作 把对应的中文件中的文 ...
- .net 服务因为GC时遇到的问题和解决办法
1.问题: .net单一服务中,大量的请求访问后台服务,多线程处理请求,但每个线程都可能出现超时的现象.记录超时日志显示,超时可能在序列化时,Socket异步发送AsyncSend数据时,普通业务处理 ...
- 第一条python语句!
- Matlab_ eval 批量定义变量
本文备忘 Matlab 中批量定义变量的方法. 参考: [1] matlab中批量赋值与声明变量(eval函数) [2] MathWorks eval 缘起与说明 当变量名称多到一定程度时,变量名的管 ...