- 浏览: 74868 次
- 来自: 北京
最新评论
文章列表
题目:https://leetcode-cn.com/problems/contiguous-sequence-lcci
给定一个整数数组,找出总和最大的连续数列,并返回总和。
示例:
输入: [-2,1,-3,4,-1,2,1,-5,4]
输出: 6
解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。
解题:
用变量去记录连续数列总和的最大值。
用另一个变量记录当前位置可累积到的总和,若该值需大于0,否则置为0。(此处就是用了动态规划的思想)
即:f(n)=max(f(n-1)+n,0)
class Solution {
...
题目:https://leetcode-cn.com/problems/the-masseuse-lcci/
一个有名的按mo师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按mo师找到最优的预约集合(总预约时间最长),返回总的分钟数。
示例 1:
输入: [1,2,3,1]
输出: 4
解释: 选择 1 号预约和 3 号预约,总时长 = 1 + 3 = 4。
示例 2:
输入: [2,7,9,3,1]
1.等价的sql
SELECT DISTINCT field1,field2 FROM test_index.test_type
等价于
SELECT field1,field2 FROM test_index.test_type GROUP BY field1,field2
2.而group by的查询,在es中我们可以用Aggregation(聚合)去实现,等价的DSL查询语句如下:
POST /test_index/test_type/_search
{
"from": 0,
"size": 0,
"ag ...
分享一个我自己写的串行规则执行器
https://github.com/ChenghuiZ/rules-executor
该规则执行器中包含三种规则:
1.操作型规则(AbstractOperateRule)对输入的数据进行加工处理.2.过滤型规则(AbstractFilterRule)符合条件的通过,继续执行后续的规则;否则丢弃,直接返回null.3.条件型规则(AbstractConditionRule) 符合条件的通过,继续执行后续的规则;否则返回当前中间状态的数据(即该规则之前其他规则加工过的结果).
一个规则执行器(RulesExecutor):
可以配置随机 ...
一、概述
谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronized(AQS)!
类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch...。
以下是本文的目录大纲:
概述
框架
源码详解
简单应用
若有不正之处,请谅解和批评指正,不胜感激。
请尊重作者劳动成果,转载请标明原文链接:http://www.cnblogs.co ...
若服务器无法访问外网,可参考以下的安装步骤。否则跳转到《elasticsearch以及其常用插件安装》。
1. 安装elasticsearch
下载elasticsearch2.3.3安装包。下载地址:elasticsearch-2.3.3.tar.gz
在安装目录解压即可。
2. 安装kibana插件
下载kibana4.5.1安装包(有linux和windows版本之分)。下载地址:kibana-4.5.1-linux-x64.tar.gz
在安装目录解压即可。
3. 安装elasticsearch-head插件
下载elasti ...
原文链接:http://www.ruanyifeng.com/blog/2019/04/oauth_design.htmlOAuth 2.0 是目前最流行的授权机制,用来授权第三方应用,获取用户数据。
这个标准比较抽象,使用了很多术语,初学者不容易理解。其实说起来并不复杂,下面我就通过 ...
转载自:http://www.cnblogs.com/yunfeifei/p/3850440.html
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:
...
转载自:http://sumnous.github.io/blog/2014/05/13/random-pick-function/
前阵子去某公司笔试,有道题是
已知随机数生成函数f(),返回0的概率是60%,返回1的概率是40%。根据f()求随机数函数g(),使返回0和1的概率是50%,不能用已有的随机生成库函数。
分析:
调用f()两次即可,会出现4种结果(0,0), (0,1), (1,0), (1,1),其中出现(0,1), (1,0)的概率是一样的,可以构造出等概率事件,比如出现(0,1)可返回0,出现(1,0)可返回1,如果出现其他两种情况则舍掉重新调用。
代码 ...
转载自:http://blog.csdn.net/pear_zi/article/details/8082752
在HDFS里面,data node上的块大小默认是64MB(或者是128MB或256MB)
问题: 为什么64MB(或128MB或256MB)是最优选择?
1.为什么不能远少于64MB(或128MB或256MB) (普通文件系统的数据块大小一 ...
1.CaseFormat
import com.google.common.base.CaseFormat;
import static com.le.test.Printer.*;
/**
*
* @author zhongchenghui
*/
public class CaseFormatTest {
public static void main(String[] args) {
println(CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, "areaCo ...
#10天以前所有,不包括第10天当天的文件
$ find -mtime +10 -exec rm -rfv {} \;
# 10天前,当天一天的文件
$ find -mtime 10 -exec rm -rfv {} \;
# 10天内,包括今天的文件,但不包括第10当天的文件
$ find -mtime -10 -exec rm -rfv {} \;
#查找在系统中属于test这个用户的文件
$find / -user test
Broken pipe产生的原因通常是当管道读端没有在读,而管道的写端继续有线程在写,就会造成管道中断。(由于管道是单向通信的) SIGSEGV(Segment fault)意味着指针所对应的地址是无效地址,没有物理内存对应该地址。 以下是UNIX ...
转载自:http://tech.meituan.com/java-hashmap.html
前利 ·2016-06-24 11:58
摘要
HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。
简介
Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMap、 ...
转载自:http://tech.meituan.com/namenode-memory-detail.html
小桥 ·2016-12-09 17:56
前言
《HDFS NameNode内存全景》中,我们从NameNode内部数据结构的视角,对它的内存全景及几个关键数据结构进行了简单解读,并结合实际场景介绍了NameNode可 ...