08 2020 档案

摘要:所谓类的单例设计模式,就是采取一定的方法保证在整个软件系统中,对某个类只能创建一个对象实例,并且该类只提供一个取得其对象实例的全局访问方法(静态方法)。单例模式的实现非常简单,只由单个类组成。为了确保单例实例的唯一性,所有的单例构造器都要被声明为私有的(private),再通过声明静态方法(stat 阅读全文
posted @ 2020-08-26 07:23 有心有梦 阅读(247) 评论(0) 推荐(0)
摘要:一、下载与安装 redis的下载地址 http://redis.io/ http://www.redis.cn/ 下载后redis安装包后缀名为tar.gz,说明是linux环境下的。 解压缩: tar -zxvf redis-3.0.4.tar.gz -C /opt/module 解压之后,进入到 阅读全文
posted @ 2020-08-25 16:33 有心有梦 阅读(458) 评论(0) 推荐(0)
摘要:Redis的事务 事务的概念 可以一次执行多个命令,本质是一组命令的集合。一个事务中的所有命令都会序列化,按顺序地串行化执行而不会被其它命令插入,不许加塞。 作用 一个队列中,一次性、顺序性、排他性的执行一系列命令。 如何使用事务 常用命令 Case1 正常执行 批处理一个命令集合,在一个原子操作里 阅读全文
posted @ 2020-08-24 22:55 有心有梦 阅读(184) 评论(0) 推荐(0)
摘要:参数说明 redis.conf 配置项说明如下: Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程,默认为 daemonize no 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定 阅读全文
posted @ 2020-08-23 21:58 有心有梦 阅读(218) 评论(0) 推荐(0)
摘要:题目描述: 「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被读作 "一个一", 即 11。11 被读作 "两个一", 即 21。21 被读作"一个二" , "一个一", 即 1211 要求: 阅读全文
posted @ 2020-08-22 21:58 有心有梦 阅读(241) 评论(0) 推荐(0)
摘要:二叉树的遍历分为三种,即先序、中序、后序,这里的先中后都以根节点的访问顺序为基准,根据二叉树的结构特点,进行这三种遍历的方式可以采用递归的方式,也可以采用非递归的方式,采用递归的方式时三种遍历的程序只需改变访问根节点的顺序即可,十分的简单。非递归的方式,主要是借助于栈,最要的不同也是访问结点的顺序不 阅读全文
posted @ 2020-08-21 20:53 有心有梦 阅读(269) 评论(0) 推荐(0)
摘要:一、Scala语言与Java、Jvm的关系分析 Scala语言是马丁奥德斯基接触Java语言后,针对Java语言的特点,将函数式编程语言的特点融合到Java中,由此发明的。Scala语言和Java语言的;联系是十分紧密的。现在主流的JVM的Javac编译器就是马丁奥德斯基编写的,包括JDK1.5和J 阅读全文
posted @ 2020-08-20 21:27 有心有梦 阅读(1740) 评论(0) 推荐(1)
摘要:题目: 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ \ 7 2 1 返回 true, 阅读全文
posted @ 2020-08-19 09:39 有心有梦 阅读(256) 评论(0) 推荐(0)
摘要:题目:路径总和 III 给定一个二叉树,它的每个结点都存放着一个整数值。 找出路径和等于给定数值的路径总数。 路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。 二叉树不超过1000个节点,且节点数值范围是 [-1000000,1000000] 的整数 阅读全文
posted @ 2020-08-18 07:20 有心有梦 阅读(330) 评论(0) 推荐(0)
摘要:存储文件的合并(StoreFile Compaction) 由于memstore每次刷写都会生成一个新的Hfile文件,那么当刷写的次数过多的时候就会产生大量的HFile小文件,我们知道,对于某一个字段的数据来说,它可能有多个版本的数据,这个版本是由时间戳决定的,那么可能在不同的时间对同一字段进行更 阅读全文
posted @ 2020-08-17 09:19 有心有梦 阅读(756) 评论(0) 推荐(0)
摘要:题目: 给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。 示例: 输入: 3 / \ 9 20 / \ 15 7 输出:[3, 14.5, 11] 解释: 第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。 提示: 节点值的范围 阅读全文
posted @ 2020-08-16 08:53 有心有梦 阅读(200) 评论(0) 推荐(0)
摘要:写流程: 具体流程: Client进行写操作的时候,会先查询Meta缓存中是否含有目标table的region信息以及Meta表位置信息,如果有就不再去访问zookeeper,而是直接进行下一步的操作。如果没有则会去访问zookeeper,获取hbase:meta表位于哪个Region Server 阅读全文
posted @ 2020-08-15 06:34 有心有梦 阅读(1468) 评论(0) 推荐(0)
摘要:内存数据刷写(MemStore Flush) 同一个Region上的不同Store代表了不同的列族,最终刷写到HDFS上的时候,会形成不同的文件夹。每一个Store都有一个MemStore,刷写数据正是从将MemStore的数据刷写到磁盘形成存储文件store file的。那么何时开始进行刷写呢?H 阅读全文
posted @ 2020-08-14 09:25 有心有梦 阅读(672) 评论(0) 推荐(1)
摘要:题目: 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 分析: 翻转二叉树,核心就是交换左右子树,子树也有子树。这就是逻辑上的重复,所以采用递归的方式解决。 代码: public TreeNode in 阅读全文
posted @ 2020-08-13 06:22 有心有梦 阅读(141) 评论(0) 推荐(0)
摘要:题目: 给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值。 这条路径可以经过也可以不经过根节点。 注意: 两个节点之间的路径长度由它们之间的边数表示。 示例: 输入: 5 / \ 4 5 / \ \ 1 1 5 输出:2 输入: 1 / \ 4 5 / \ \ 4 4 5 输出:2 分 阅读全文
posted @ 2020-08-12 09:05 有心有梦 阅读(240) 评论(0) 推荐(0)
摘要:题目: 在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为“根”。 除了“根”之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果两个直接相连的房子在同一天晚上被打劫,房 阅读全文
posted @ 2020-08-11 07:14 有心有梦 阅读(235) 评论(0) 推荐(0)
摘要:使用HBase API删除数据的时候需要注意的地方有很多,需要分成几种情况进行分别的讨论,进行删除操作之前,首先需要构建删除对象,即org.apache.hadoop.hbase.client包下的Delete,然后根据实际情况进行具体的操作,下面一一介绍: 1、只传rowKey rowKey这个参 阅读全文
posted @ 2020-08-10 08:37 有心有梦 阅读(2172) 评论(0) 推荐(0)
摘要:题目 编写一个程序,找到两个单链表相交的起始节点。如下图所示的两个链表: A、B两个链表交于C1这个结点。 示例: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 输出:Ref 阅读全文
posted @ 2020-08-09 08:40 有心有梦 阅读(104) 评论(0) 推荐(0)
摘要:题目: 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例: 输入: 1->1->2 输出: 1->2 输入: 1->1->2->3->3 输出: 1->2->3 分析: 因为是有序的链表,所以好处理的多,因为如果某个元素含有重复的,当这个元素第一次出现的时候,其后面若干位置一定是 阅读全文
posted @ 2020-08-08 11:14 有心有梦 阅读(124) 评论(0) 推荐(0)
摘要:题目: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 解法一:非递归,循环遍历合并 public ListNode mergeTwoLists(ListNode 阅读全文
posted @ 2020-08-07 13:55 有心有梦 阅读(168) 评论(0) 推荐(0)
摘要:题目 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明: 给定的 n 保证是有效的。 分析: 设length为链表的长度,删除倒数第n个元素,其实 阅读全文
posted @ 2020-08-06 06:17 有心有梦 阅读(78) 评论(0) 推荐(0)
摘要:第234题 请判断一个链表是否为回文链表。 示例 输入: 1->2 输出: false 输入: 1->2->2->1 输出: true 分析 回文链表就是链表中的元素是对称相等的,通过这个特点,可以借助于栈,如果链表的元素个数是奇数个,那么就将最中间元素左边的元素存入栈,然后再依次出栈与中间元素的右 阅读全文
posted @ 2020-08-05 07:28 有心有梦 阅读(149) 评论(0) 推荐(0)
摘要:第104题: 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例:给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回它的最大深度 3 。 分析: 题目给出了最大 阅读全文
posted @ 2020-08-04 08:11 有心有梦 阅读(217) 评论(0) 推荐(0)
摘要:为保证producer发送的数据,能可靠的发送到指定的 topic,topic的每个partition收到producer发送的数据后,都需要向producer发送ack(acknowledgement确认收到 ),如果producer收到 ack 就会进行下一轮的发送,否则重新发送数据。 那么何时 阅读全文
posted @ 2020-08-03 08:22 有心有梦 阅读(361) 评论(0) 推荐(0)
摘要:生产者(producer)采用推(push)模式将消息发布到broker,每条消息都被追加(append)到分区(patition)中,属于顺序写磁盘(顺序写磁盘效率比随机写内存要高,保障kafka吞吐率)。消息发送时都被发送到一个topic,其本质就是一个目录,而topic是由一些Partitio 阅读全文
posted @ 2020-08-02 08:55 有心有梦 阅读(417) 评论(0) 推荐(0)
摘要:KafKa的内部工作流程: Kafka 中消息是以topic 进行分类的,生产者生产消息,消费者消费消息,都是面向topic的。topic 是逻辑上的概念,而partition 是物理上的概念(实际存在的),每个partition 对应于一个log 文件,该log 文件中存储的就是producer 阅读全文
posted @ 2020-08-01 10:34 有心有梦 阅读(350) 评论(0) 推荐(0)