ARTS打卡计划第二周-Algorithm】的更多相关文章

665. 非递减数列  https://leetcode-cn.com/problems/non-decreasing-array/ 给定一个长度为 n 的整数数组,你的任务是判断在最多改变 1 个元素的情况下,该数组能否变成一个非递减数列. 我们是这样定义一个非递减数列的: 对于数组中所有的 i (1 <= i < n),满足 array[i] <= array[i + 1]. class Solution { public boolean checkPossibility(int[]…
本周review的文章是:https://medium.com/@hakibenita/optimizing-django-admin-paginator-53c4eb6bfca3 改篇文章的题目是:Optimizing Django Admin Paginator,How we finally made Django admin fast for large tables. django分页的时候,大部分时间都会消耗在求count上,本篇文章提到了几点用于提升大表分页的方法: 1.重写默认的分…
Algorithms: https://leetcode-cn.com/problems/3sum/ 算法是先排序,然后按照两个数和两边逼中,考虑去重. Review: https://www.infoq.cn/article/D0o4wE24f_fCFKJPZIaS Fuchsia版本,慢慢雏形已经出来刚看了Q版本计划,搞事情? Tips: c++11 : 1.auto 类型新引入.解决了赋值时知道变量的类型问题(比如模板类定义实现里可能不知道具体是什么类型).编译器完成分析表达式所属的类型.…
现在有这样一种常见,系统中有一个接口,该接口执行的方法忽快忽慢,因此你需要去统计改方法的执行时间.刚开始你的代码可能如下: long start = System.currentTimeMillis(); somemethod(); long end = System.currentTimeMillis(); System.out.println(end-start); 这个方式能够打印方法执行的时间,可是疑问来了,如果系统中很多方法都需要计算时间,都需要重复这样的代码?这个时候,你可以考虑注解…
最近发现一个挺不错的框架mysql-binlog-connector-java,可以实时监控binlog的变化. 首先检查mysql的binlog是否开启,在开启的情况下: 引入依赖 <dependency> <groupId>com.github.shyiko</groupId> <artifactId>mysql-binlog-connector-java</artifactId> <version>0.18.1</vers…
7. Reverse Integer import math class Solution: def reverse(self, x: int) -> int: ret = 0 if x >=0: x_str = str(x) ret = int(x_str[::-1]) else: x =abs(x) x_str=str(x) ret = -1*int(x_str[::-1]) if ret>=math.pow(2,31)-1 or ret<=-1*math.pow(2,31):…
在软件开发的过程,经常有一些类型的字段信息:性别.学历.职级.车辆类别.公司类型.结算类型等.这些字段有2个特征:1是字段可选的类型是有限,2是字段可能会变化,我们把这种字段描述为字段字段.  本篇文章重点总结系统字典模块的设计,根据我的工作经验,我对字典模块的设计认知包含如下几个阶段: 一.硬编码到页面 这个阶段,一般是把可以枚举的option写在html,或者通过后台模板硬编码到html中.这种方式的实现优点在于实现简单,也没有依靠数据库.但是缺点也是很明显,如果这些字段发生了变化,需要去改…
通常在开发具体项目过程中我们可能会面临如下问题: 统一所有的json返回结果 统一处理所有controller中的异常,并且给不同异常不同的返回状态值 统一对返回的接口做数据校验或者加密,防止篡改 在spring中的处理方式是使用@RestControllerAdvice注解.下面是一个例子,可以将所有的controller中的返回结果,包装成一个CommonResponse. @RestControllerAdvice public class CommonResponseDataAdvice…
本周分享的文章来自于medium的 Testing Best Practices for Java + Spring Apps 这个文章主要讲的是java测试的一些最佳实践 1.避免函数返回void,返回void不利于写单元测试,因为返回void不知道方法执行的内部情况 2.使用有意义的 assertions,可以使用  https://google.github.io/truth/ 类库 3.记得测试异常 4.可以使用变量进行多次测试 5.使用Mockito进行mock测试…
Algorithms: https://leetcode-cn.com/problems/merge-two-sorted-lists/submissions/ 合并两个链表 Review:  “Putting comments in code: the good, the bad, and the ugly.” by Bill Sourour https://link.medium.com/XB5EPBBa8X Tips: android : Andorid P 新增的registerAudi…
Algorithms: https://leetcode-cn.com/problems/two-sum/ Review: https://www.infoq.cn/article/EafgGJEtqQTAa_0sP62N Q版本,慢慢雏形已经出来. Tips: c++11 : 1.nullptr   是一种特殊类型的字面值, null 指针常量,可以转换成任意其他指针类型,是一个关键字.之前的NULL是一个预处理变量,需要单独引入头文件cstdlib,其值也是0. #ifdef __cplus…
任务:完成一份用户反馈的收集,并进行分析 第一步:去你能想到的公开.非公开渠道收集最近90天,至少40条和B站相关的有效用户差评反馈,并根据你对业务的理解分类整理,以表格的形式进行整理,以图片的方式提交系统. *课程导读 一.通过用户反馈发现问题 (一)通过用户反馈关注什么 1.自身产品的问题 2.竞品的问题(内部or外部) 3.可能的机会点——满足用户的需求 (二)通过哪些渠道收集用户反馈 ps:1.半公开渠道:朋友圈.微信群.用户评价 2.用户表达意愿强烈:百度手机助手.小米应用商店.豌豆荚…
Algorithms: https://leetcode-cn.com/problems/linked-list-cycle/ 链表环. Review: “What I learned from doing 1000 code reviews” by Steven Heidel https://medium.com/p/fe28d4d11c71 Tips: java : Optional 处理价值10亿美元问题(Null 引用问题): 处理null 一种函数式编程方式,不是取代.https://…
Algorithms: https://leetcode-cn.com/problems/min-stack/submissions// Review: https://www.infoq.cn/article/why-do-we-need-webrtc Tips: android handler. 主线程不做处理复杂的问题,创建hanlder发消息到主线程,主线程loop 从messagequeue取消息进行处理. Share: 分享下review的文章小结 y也是讲解了webrtc之前相关知…
Algorithms: https://leetcode-cn.com/problems/single-number/submissions/ Review: “What Makes a Good Developer?” by Jonathan Bluks https://link.medium.com/O0CfiH0QfZ Tips: android handler. 主线程不做处理复杂的问题,创建hanlder发消息到主线程,主线程loop 从messagequeue取消息进行处理. Sha…
Algorithms: https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence/ 最长连续子序列. Review:  “Learn to code (or do anything): top down, bottom up and other approaches” by Austin Tindle https://link.medium.com/MVvduEYGSY  Tips: android lo…
Algorithms: https://leetcode-cn.com/problems/balanced-binary-tree/ 平衡二叉树. Review:  “What I Learned in My First Two Years as a Software Engineer” by Mitchell Irvin https://link.medium.com/KoBoQlF0GY  Tips: PCM/ADPCM : PCM的基本参数是采样频率和采样位深,采样频率就是每秒采样多少次,…
Algorithms: https://leetcode-cn.com/problems/next-greater-node-in-linked-list/ 链表中下一个更大的值,双层循环及优化,后面看可以栈处理,学习了 Review:  “Can You Avoid Functional Programming as a Policy?” by Eric Elliott https://link.medium.com/oWci9jdLjY Tips: android : Andorid  li…
Algorithms: https://leetcode-cn.com/problems/repeated-substring-pattern/ 重复子字符串 Review:  “I’m Leaving Google — and Here’s the Real Deal Behind Google Cloud” by Amir Hermelin  https://link.medium.com/mPXXS8aBWX Tips: android : init.rc Android初始化语言包含了四…
Algorithms: https://leetcode-cn.com/problems/longest-common-prefix/ Review: https://link.medium.com/NUjceV9oJX The Art of Computer Programming’ by Donald Knuth Tips: c++11 : 1.c++先高一段落,下面补习下android 和java吧,先偷懒一次. Share: 分享下review的文章小结 1.主要讲解了作者对计算机编程艺…
Algorithms: https://leetcode-cn.com/problems/longest-palindromic-substring/ 中心扩展法首先考虑,当然看到有个动态规划,一直很难理解.动态规划要好好研究一番. Review: https://link.medium.com/rstYA3alzX Goodbye, Object Oriented Programming” by Charles Scalfani Tips: c++11 : 1.正则表达式 RE库. Share…
Algorithms: https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ 采用了map的存储,然后移动窗口方式解决此问题,当然看到有个动态规划,一直很难理解. Review: https://www.infoq.cn/article/rAJiubRpi9xSl_LEhI2N 友谊与程序,生活与事业. Tips: c++11 : 1.右值引用 是对临时对象的一种引用,它是在初始化时完成引…
Algorithms: https://leetcode-cn.com/problems/4sum/ 算法是先排序,然后按照一次循环按照三个数和两边逼中,考虑去重. Review: https://www.infoq.cn/article/qt51vqATE7jf_bpw5ggJ kotlin 新语言替代java? android哦. Tips: c++11 : 1.C++ 类内初始化 ,c++ 11 新增的再声明的就地定义,可以直接对类内成员进行初始化/列表初始化. 2.列表初始化的功能 ,比…
Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练. 关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell. Review:主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手. 所以,需要你阅读并点评至少一篇英文技术文章,…
Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练. 关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell. Review:主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手. 所以,需要你阅读并点评至少一篇英文技术文章,…
Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练. 关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell. Review:主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手. 所以,需要你阅读并点评至少一篇英文技术文章,…
Algorithm 题目描述 Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct. Example 1: Input: [1,2,3…
Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练. 关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell. Review:主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手. 所以,需要你阅读并点评至少一篇英文技术文章,…
Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练. 关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell. Review:主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手. 所以,需要你阅读并点评至少一篇英文技术文章,…
Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练. 关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell. Review:主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手. 所以,需要你阅读并点评至少一篇英文技术文章,…