首页
学习
活动
专区
工具
TVP
发布

眯眯眼猫头鹰的小树杈

专栏作者
152
文章
88436
阅读量
25
订阅数
leetcode 300. Longest Increasing Subsequence
找到整数数组中最长的递增子数组。该子数组可以为不连续的。如题目中例子所示,[10, 9, 2, 5, 3, 7, 101, 18]得到的最长子数组为[2,3,7,101]。
眯眯眼的猫头鹰
2018-10-31
3900
leetcode 343. Integer Break
这里应用了一个数学的思路。假设我们有一个数字n,该数组可以随机分解为t和n-t。当分解为n/2时可以获得最大的乘积。因此t取n/2时可以得到最好的结果。但是这里我们明显还可以继续对t分解(如果t大于1),这样逐个分解之后终归会分解为2或者1为质因数
眯眯眼的猫头鹰
2018-10-31
2350
猫头鹰的深夜翻译:Java中的CAS(Compare And Swap)
在我们深入了解CAS(Compare And Swap)策略以及它是如何在AtomicInteger这样的原子构造器中使用的,首先来看一下这段代码:
眯眯眼的猫头鹰
2018-10-31
5280
leetcode295. Find Median from Data Stream
这里采用了两个优先队列来实现。一个优先队列用来存储字符流中较小的一半,另一个用来存储字符流中数值较大的一半。这样当需要获取当前中位数时,就可以根据当前的数值个数选择一个或是两个数的平均值。
眯眯眼的猫头鹰
2018-10-31
5140
docker指令学习记录
本文为学习整理和参考文章,不具有教程的功能。其次,后面将会陆续更新各种应用的容器化部署的实践,如MySQL容器化,Jenkins容器化,以供读者参考。
眯眯眼的猫头鹰
2018-10-31
4790
红黑树插入操作的java实现
网上有非常多的关于红黑树理论的描述,本文的重点将不在于此,但是会在文中给出优秀文章的链接。对红黑树不了解的建议先阅读文章再看实现。本红黑树实现不支持多线程环境。因为删除操作灰常复杂,所以后续更新。源码在文末可以查看。
眯眯眼的猫头鹰
2018-10-31
7230
linux常用指令学习记录
locate会根据/var/lib/mlocate内的数据库记载,找出用户输入的关键字文件名,即所有包含该关键字的文件都将被输出。但是因为数据库的更新一般为一天一次,所以如果需要查找新的内容,需要用updatedb指令更新数据库,updatedb会根据/etc/updatedb.conf去查找硬盘内的文件名,并更新数据库文件
眯眯眼的猫头鹰
2018-10-31
1.3K0
猫头鹰的深夜翻译:如何优化MYSQL查询
索引除了能够确保唯一的标记一条记录,还能是MySQL服务器更快的从数据库中获取结果。索引在排序中的作用也非常大。
眯眯眼的猫头鹰
2018-10-31
5510
猫头鹰的深夜翻译:持久化容器存储
临时性存储是容器的一个很大的买点。“根据一个镜像启动容器,随意变更,然后停止变更重启一个容器。你看,一个全新的文件系统又诞生了。”
眯眯眼的猫头鹰
2018-10-31
8320
Dubbo AbstractRegistry源码阅读
最近因为工作需要在学习Dubbo的各种机制。其中深入学习了一下AbstractRegistry的实现机制。在此根据Dubbo源码对其实现进行一个总结。
眯眯眼的猫头鹰
2018-10-31
8290
记录分布式一致性中的几个概念
事务是由一系列对系统中数据进行访问与更新的操作所组成的一个程序执行逻辑单元,狭义上的事务特指数据库事务。事务具有ACID属性。
眯眯眼的猫头鹰
2018-10-31
5970
猫头鹰的深夜翻译:Pattern: Service Mesh
在十几年前,我们无法想象一个分布式系统会是什么样子。它给我们带来了全新的架构思路,但同时也引入了一些问题。 当时这些系统非常少有而且架构简单,工程师们通过尽可能的减少远程交互的方式降低复杂度。解决分布式问题最好的方法是尽可能的避免分布式系统,尽管这意味着会有大量重复的逻辑分布在不同的系统上。
眯眯眼的猫头鹰
2018-10-31
8440
leetcode349. Intersection of Two Arrays
思路一模仿了归并排序的merge部分。先将两个数组分别排序,排序完成之后再用两个指针分别比较两个数组的值。如果两个指针指向的值相同,则向结果集中添加该元素并且同时将两个指针向前推进。否则指向的值较小的那个指针向前推进。
眯眯眼的猫头鹰
2018-10-31
3050
深入理解 依赖注入
相信所有面试java开发的童鞋一定都被问到过是否使用过Spring,是否了解其IOC容器,为什么不直接使用工厂模式,以及究竟IOC和DI区别在于哪里这种问题。今天就结合JAVA语言,解释一下究竟是如何衍生出DI模式,以及其在Spring中的实现。
眯眯眼的猫头鹰
2018-10-31
4670
跨域问题的一次深入研究
最近在业务代码中深受跨域问题困扰,因此特别写一篇博客来记录一下自己对跨域的理解以及使用到的参考资料。本文的项目背景基于vue+vuex+axios+springboot。涉及以下内容:
眯眯眼的猫头鹰
2018-10-31
1.5K0
Leetcode309. Best time to sell stock with cooldown
和前面几题相比,这题还增加了一个限制条件,也就是说我们在抛出股票之后,还需要冷却一天才可以买入下一只股票。那么我们进行什么样的操作才能使收益最大呢?
眯眯眼的猫头鹰
2018-10-31
2870
leetcode337. House Robber III
最开始的思路我是采用自顶向下递归遍历树的形式来计算可能获得的最大收益。当前节点的情况有两种:选中或是没选中,如果选中的话,那么两个直接子节点将不可以被选中,如果没选中,那么两个直接子节点的状态可以是选中或是没选中。代码如下:
眯眯眼的猫头鹰
2018-10-31
3590
leetcode347. Top K Frequent Elements
这里有一个额外要求即时间复杂度要优于O(n log n),也就是说我们无法采用先排序再顺序计算的方式来进行统计,因为最好的排序算法其平均的时间复杂度也需要O(n log n)。那么有没有别的方法可以让我们达到更好的效率呢?
眯眯眼的猫头鹰
2018-10-31
2740
猫头鹰的深夜翻译:Volatile的原子性, 可见性和有序性
为什么要额外写一篇文章来研究volatile呢?是因为这可能是并发中最令人困惑以及最被误解的结构。我看过不少解释volatile的博客,但是大多数要么不完整,要么难以理解。我会从并发中最重要的一些因素开始说起:
眯眯眼的猫头鹰
2018-10-31
5650
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档