摘要: 找到大问题和小问题之间共有的特性,列出一定的状态转移规律,然后设计满足条件的小问题解决方案,最后凭借记忆中的中间值快速求出最终解 分割整数的问题需要我在题目中仔细分析出动态规划的一般规律,否则就会陷入一般的思路,绞尽脑汁想不出来,其实把题目对到了动态规划的一般思路上还是比较容易解决的 1、分割整数的 阅读全文
posted @ 2020-01-13 21:38 后会丶无期 阅读(362) 评论(0) 推荐(0)
摘要: 在另外的两篇文章中先后介绍了轻量级同步关键字volatile和重量级锁关键字synchronized,这两个关键字是Java语言中进行线程同步的基本方式(当然还有ReentrenLock等显式锁方式)。本文将就Java虚拟机针对同步原语做的一些锁优化进行简单的介绍,同时基于JDK 1.6将这些锁优化 阅读全文
posted @ 2020-01-10 19:01 后会丶无期 阅读(615) 评论(0) 推荐(0)
摘要: 找到大问题和小问题之间共有的特性,列出一定的状态转移规律,然后设计满足条件的小问题解决方案,最后凭借记忆中的中间值快速求出最终解 数组区间问题是动态规划问题的一种,我们可以借用动态规划问题的一般解题思路,先看第一个 Range Sum Query Given an integer array num 阅读全文
posted @ 2020-01-09 22:34 后会丶无期 阅读(320) 评论(0) 推荐(0)
摘要: 简介 synchronizaed关键字是JAVA阻塞同步(互斥同步)中最常用的一种方式,使用时将此关键字加到所需同步的代码块儿前即可,比如 int i = 0; synchronized (this){ i++; } synchronizaed同步方式在JAVA中是重量级加锁方式,下面来介绍一下它的 阅读全文
posted @ 2020-01-09 20:01 后会丶无期 阅读(203) 评论(0) 推荐(0)
摘要: 找到大问题和小问题之间共有的特性,列出一定的状态转移规律,然后设计满足条件的小问题解决方案,最后凭借记忆中的中间值快速求出最终解 动态规划的矩阵路径问题是常见的动态规划问题之一,这类题和一般的动态规划问题的解题思路是一样的,存储中间状态并利用这些中间状态去解决最终的问题。但这类问题的边界条件是需要注 阅读全文
posted @ 2020-01-08 21:56 后会丶无期 阅读(832) 评论(0) 推荐(0)
摘要: 找到大问题和小问题之间共有的特性,列出一定的状态转移规律,然后设计满足条件的小问题解决方案,最后凭借记忆中的中间值快速求出最终解 动态规划问题的复杂性在于你永远不知道下一个题目中的状态是什么,有什么样的状态转移规律,抢劫房子的问题是一个经典的动态规划问题,是裴波那切数列问题的一种,类似于爬楼梯。。。 阅读全文
posted @ 2020-01-07 23:05 后会丶无期 阅读(396) 评论(0) 推荐(0)
摘要: 简介 volatile关键字可以说是Java虚拟机提供的最轻量级的同步机制,相对于synchronized,它只保证了变量可见性,没办法保证并发的正确性。Java内存模型对volatile专门定义了一些特殊的访问规则。它有两种特性,1.所有线程的可见性 2.禁止指令重排序优化。先记住这两个特性,首先 阅读全文
posted @ 2020-01-07 19:13 后会丶无期 阅读(183) 评论(0) 推荐(0)
摘要: 通过一个小问题简单探索动态规划 阅读全文
posted @ 2020-01-06 22:34 后会丶无期 阅读(259) 评论(0) 推荐(0)