<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[TNTZS666的博客]]></title><description><![CDATA[从无能到平庸要比从一流到卓越需要人们付出多得多的努力。]]></description><link>https://blog.youkuaiyun.com/TNTZS666</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; TNTZS666]]></copyright><item><title><![CDATA[LeetCode刷题（八）——贪心算法]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/108420626</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/108420626</guid><author>TNTZS666</author><pubDate>Sat, 05 Sep 2020 16:19:29 +0800</pubDate><description><![CDATA[定义
贪心算法（又称贪婪算法）是指，在对问题求解时，总是做出在当前看来是最好的选择。也就是说，不从整体最优上加以考虑，算法得到的是在某种意义上的局部最优解 。
贪心算法不是对所有问题都能得到整体最优解，关键是贪心策略的选择。也就是说，不从整体最优上加以考虑，做出的只是在某种意义上的局部最优解。
算法思想

将求解问题分成若干子问题
对每个子问题求解得到子问题的局部最优解
将所有局部最优解合并成原问题的一个解

贪心算法是一种对某些求最优解问题的更简单、更迅速的设计技术。贪心算法采用自顶向下，以迭代的方法做出]]></description><category></category></item><item><title><![CDATA[LeetCode刷题（七）——堆]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/108181642</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/108181642</guid><author>TNTZS666</author><pubDate>Sun, 23 Aug 2020 15:52:34 +0800</pubDate><description><![CDATA[堆的定义
堆(Heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵完全二叉树的数组对象。
这里涉及到一个概念，即完全二叉树。
完全二叉树是二叉树的一种特殊的形式，下面是来自百度百科对完全二叉树的释义：一棵深度为k的有n个结点的二叉树，对树中的结点按从上至下、从左到右的顺序进行编号，如果编号为i（1≤i≤n）的结点与满二叉树中编号为i的结点在二叉树中的位置相同，则这棵二叉树称为完全二叉树。
这里面又涉及到满二叉树的定义：满二叉树就是二叉树每一层的结点个数都达到了最大值, 即第i层上有2]]></description><category></category></item><item><title><![CDATA[LeetCode刷题（六）——栈]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/108038235</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/108038235</guid><author>TNTZS666</author><pubDate>Sun, 16 Aug 2020 17:07:34 +0800</pubDate><description><![CDATA[本周刷了leetCode中可以用栈解决的一些题目。在此之前先简单介绍下栈以及栈在java中的一些常用方法。
定义
栈（stack）又名堆栈，它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶，相对地，把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈，它是把新元素放到栈顶元素的上面，使之成为新的栈顶元素；从一个栈删除元素又称作出栈或退栈，它是把栈顶元素删除掉，使其相邻的元素成为新的栈顶元素。栈是一种先进后出（FILO）的数据结构。
java中常见用法
1--&gt;p]]></description><category></category></item><item><title><![CDATA[LeeCode刷题（五）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/107894022</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/107894022</guid><author>TNTZS666</author><pubDate>Sun, 09 Aug 2020 15:22:53 +0800</pubDate><description><![CDATA[转眼刷题已经是第五周了，由于平时上班，所以每周刷的题并不多，目前进展如下：

emmm，平均一周6,7到题。惭愧惭愧。不过这周做的时候看了一个刷题大佬总结的一些经验，下面是他GitHub的链接：https://github.com/liweiwei1419
里面有他刷题的一些经验总结心得。我觉的对刚开始刷题的人来说还是挺有帮助的。就比如我一开始的打算是把热题中的简单难度的都刷完，然后再中等，困难。虽然之前几周也都有总结，但是效果感觉不是很好，比如简单做过的题，中等的遇到类似了还是有点束手无措的感觉。看了大佬]]></description><category></category></item><item><title><![CDATA[leetCode刷题（四）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/107741304</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/107741304</guid><author>TNTZS666</author><pubDate>Sun, 02 Aug 2020 10:52:14 +0800</pubDate><description><![CDATA[无重复字符的最长子串
题目链接：https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/
这道题拿到后脑子里想到的只有暴力求解的方法，但显然是不可取的。看了题解之后学到了利用滑动窗口的方法求解。滑动窗口这个词我个人认为名字取的很生动形象。因为窗口我们大家都熟悉，它的大小一般是固定的。滑动窗口的概念在很多算法和应用中都有体现，比如在TCP协议中使用相应的滑动窗口协议实现重传恢复。滑动窗口算法可以用以解决数组]]></description><category></category></item><item><title><![CDATA[leetCode刷题（三）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/107598007</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/107598007</guid><author>TNTZS666</author><pubDate>Sun, 26 Jul 2020 21:18:04 +0800</pubDate><description><![CDATA[热题HOT 100 之简单难度总结

经过三个星期的时间，把HOT 100中简单难度的题目刷完了，一共23道。在此将这些题目中经常用到的方法总结一下，为之后刷中等难度的题目做准备。

简单的题目目前看下来主要还是考察我们对基本数据结构的一些熟悉程度，并没有涉及到很多算法什么的。其中有与二叉树相关的有4道，链表相关的有5道，还有数组哈希表栈等。只有极少数比如爬楼梯这种题目考察了裴波那契数列这种比较特殊的算法。
下面总结一下经常用到的解题方法：
快慢指针（双指针）法：
涉及到的题目如：移动零，回文链表，相交链表]]></description><category></category></item><item><title><![CDATA[LeetCode刷题（二）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/107429921</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/107429921</guid><author>TNTZS666</author><pubDate>Sat, 18 Jul 2020 16:10:01 +0800</pubDate><description><![CDATA[爬楼梯
题目链接：https://leetcode-cn.com/problems/climbing-stairs/

很多题目其实都是于生活息息相关的。这道爬楼梯的题目让我发现，看似简单的楼梯，我其实可以一辈子走的方式不重样（从程序运行结果来看，40阶的台阶就有1亿多种走法）这还是每次只能走一或者二阶台阶的前提下。说实话一开始我是不信的，等到我手动写到8阶楼梯有几种走法的时候，我就信了。确实有点多哈哈~

这道题其实就是裴波那契数列的实例，斐波那契数列（Fibonacci sequence），又称黄金分割]]></description><category></category></item><item><title><![CDATA[LeetCode刷题（一）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/107301444</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/107301444</guid><author>TNTZS666</author><pubDate>Sun, 12 Jul 2020 17:05:04 +0800</pubDate><description><![CDATA[第一期先刷了几道简单难度的题目练练手，目前来看，简单难度的题目主要是考验我们如何熟练利用一些常见的容器，比如Map，栈等。题目我就不复制了，直接上链接以及我自己AC的代码。
简单难度的很多题都是可以通过暴力求解AC，下面的两道题同样可以用暴力求解通过，但是我们可以巧妙的运用一些容器的特性让求解过程的空间或者时间复杂度降低。
两数之和https://leetcode-cn.com/problems/two-sum/

这道题由于题目中有一个“数组中同一个元素不能使用两遍”的前提，所以我们可以利用哈希map中不]]></description><category></category></item><item><title><![CDATA[《Hbase原理与实践》阅读笔记（七）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104234743</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104234743</guid><author>TNTZS666</author><pubDate>Sun, 09 Feb 2020 15:00:54 +0800</pubDate><description><![CDATA[学习笔记（15-16章）1.HBase 2.x核心技术1.1.Procedure1.1.1.Procedure定义1.1.2.Procedure Yield1.2.In Memory Compaction1.2.1.Segment概念1.2.2.开启方式2.高级话题2.1.二级索引2.1.1.优劣比较2.2.HBase开发与测试2.2.1.HBase社区运作机制2.3.HBase相关网站3.总结
...]]></description><category></category></item><item><title><![CDATA[《HBase原理与实践》阅读笔记（六）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104224019</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104224019</guid><author>TNTZS666</author><pubDate>Sat, 08 Feb 2020 15:46:08 +0800</pubDate><description><![CDATA[学习笔记（13-14章）1.HBase系统调优1.1.HBase-HDFS调优1.2.HBase读写性能调优1.2.1.HBase读取性能优化1.2.2.HBase写入性能优化1.3.HBase操作系统调优1.3.1.swap基本概念1.3.2.THP概念2.HBase运维案例分析2.1.RegionServer宕机2.2.HBase写入异常2.3.HBase运维问题分析思路3.总结

本博客内容...]]></description><category></category></item><item><title><![CDATA[《HBase原理与实践》阅读笔记（五）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104211202</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104211202</guid><author>TNTZS666</author><pubDate>Fri, 07 Feb 2020 17:38:02 +0800</pubDate><description><![CDATA[学习笔记（1-3章）1.备份与恢复1.1.Snapshot简介1.1.1.常用Snapshot工具1.1.2.Snapshot流程2.HBase运维2.1.HBase系统监控2.2.HBase集群基准性测试2.2.1.使用YCSB进行负载测试2.3.HBase HBCK2.3.1.集群一致性状态2.4.HBase核心参数配置2.4.1.Region相关参数2.4.2.BlockCache相关参数2...]]></description><category></category></item><item><title><![CDATA[《HBase原理与实践》阅读笔记（四）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104195820</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104195820</guid><author>TNTZS666</author><pubDate>Thu, 06 Feb 2020 15:47:09 +0800</pubDate><description><![CDATA[学习笔记（9-10章）1.宕机恢复原理1.1.RegionServer宕机异常1.2.Hbase故障恢复1.2.1.Master故障恢复原理1.2.2.RegionServer故障恢复原理及流程2.复制2.1.HBase复制管理流程2.1.1.HBase客户端创建Peer流程2.2.串行复制2.3.同步复制2.3.1.同步复制中集群的四种状态2.3.2.同步复制建立过程3.总结

本博客内容基本整...]]></description><category></category></item><item><title><![CDATA[《HBase原理与实践》阅读笔记（三）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104181654</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104181654</guid><author>TNTZS666</author><pubDate>Wed, 05 Feb 2020 15:05:26 +0800</pubDate><description><![CDATA[学习笔记（7-8章）1.Compaction实现1.1.Compaction基本工作原理1.1.1.Compaction核心作用1.1.2.Compaction触发时机1.1.3.待合并HFile集合选择策略1.1.4.挑选合适的执行线程池1.1.5.Compaction BandWidth Limit两个重要参数2.Hbase负载均衡2.1.Region迁移2.2.Region合并2.3.Reg...]]></description><category></category></item><item><title><![CDATA[《HBase原理与实践》阅读笔记（二）]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104169063</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104169063</guid><author>TNTZS666</author><pubDate>Tue, 04 Feb 2020 15:47:29 +0800</pubDate><description><![CDATA[学习笔记（4-6章）1.Hbase客户端1.1.定位Meta表1.1.1.解决热点Region问题1.2.Hbase常见超时参数2.RegionServer核心模块2.1.内部结构2.1.1.HLog2.1.2.MemStore2.1.3.HFile3.Hbase读写流程3.1.Hbase写入流程3.1.1.少量写和批量写3.1.2.MemStore Flush触发条件3.2.Hbase读取流程4...]]></description><category></category></item><item><title><![CDATA[《HBase原理与实践》阅读笔记]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/104156646</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/104156646</guid><author>TNTZS666</author><pubDate>Mon, 03 Feb 2020 16:32:45 +0800</pubDate><description><![CDATA[学习笔记一全书概述1.HBase概述1.1.Hbase发展历史1.2.Hbase数据模型1.3.Hbase体系结构1.4.Hbase系统特性2.Hbase基础数据结构与算法2.1.LSM树2.1.1.KeyValue存储格式2.2.跳跃表2.3.布隆过滤器3.Hbase依赖服务3.1.Zookeeper相关3.2.HDFS相关

本博客内容基本整理自《Hbase原理与实践》一书。仅用于个人学习和积...]]></description><category></category></item><item><title><![CDATA[Top命令详解]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/102719301</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/102719301</guid><author>TNTZS666</author><pubDate>Thu, 24 Oct 2019 11:14:45 +0800</pubDate><description><![CDATA[转自：https://www.cnblogs.com/dragonsuc/p/5512797.html

查看多核CPU命令

mpstat&nbsp;-P&nbsp;ALL&nbsp;&nbsp;和&nb...]]></description><category></category></item><item><title><![CDATA[HA集群出现脑裂情况解决方法]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/102689615</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/102689615</guid><author>TNTZS666</author><pubDate>Thu, 24 Oct 2019 08:54:39 +0800</pubDate><description><![CDATA[最近工作中测试经常反映HA集群环境中出现脑裂情况，在这里总结一下解决方法。

脑裂出现原因：
查看集群环境压力（CPU历史负载）：
sar -f /var/log/sa/sa17


可以看到环境压力较大，导致集群出现脑裂情况。
恢复措施：
1.先暂停集群的daemon，hbase，Hadoop服务.

dbserver.sh stop_server_all daemon,hadoop,hbas...]]></description><category></category></item><item><title><![CDATA[Flink基本介绍]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/102499921</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/102499921</guid><author>TNTZS666</author><pubDate>Sat, 12 Oct 2019 14:05:25 +0800</pubDate><description><![CDATA[Flink通过实现Google Dataflow流式计算模型实现了高吞吐、低延迟、高性能兼具实时流式计算框架。同时Flink支持高度容错的状态管理，防止状态在计算过程中因为系统异常而出现丢失，Flink周期性地通过分布式快照技术Checkpoints实现状态的持久化维护，使得即使在系统停机或者异常的情况下都能计算出正确的结果。
Flink的具体优势有以下几点：
同时支持高吞吐、低延迟、高性能
Fl...]]></description><category></category></item><item><title><![CDATA[Flink安装教程]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/102503322</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/102503322</guid><author>TNTZS666</author><pubDate>Fri, 11 Oct 2019 16:22:35 +0800</pubDate><description><![CDATA[1.从官网上下载自己需要的Flink版本
Flink官网下载地址：https://flink.apache.org/downloads.html
2.上传到Linux后解压
必须解压到/usr/local目录下
tar -zxf flink-1.9.0-bin-scala_2.11.tgz -C /usr/local

3.启动Flink
进入bin目录下执行如下命令：
./start-clust...]]></description><category></category></item><item><title><![CDATA[HA集群修改虚IP后原先的虚IP地址仍能连接问题]]></title><link>https://blog.youkuaiyun.com/TNTZS666/article/details/102468239</link><guid>https://blog.youkuaiyun.com/TNTZS666/article/details/102468239</guid><author>TNTZS666</author><pubDate>Wed, 09 Oct 2019 19:42:10 +0800</pubDate><description><![CDATA[最近在工作中碰到测试在修改了HA集群的虚IP地址后发现仍能继续连上之前的虚IP。
网上查看虚IP的原理后得知其实现原理主要是靠TCP/IP的ARP协议。因为ip地址只是一个逻辑地址，在以太网中MAC地址才是真正用来进行数据传输的物理地址，每台主机中都有一个ARP高速缓存，存储同一个网络内的IP地址与MAC地址的对应关系，以太网中的主机发送数据时会先从这个缓存中查询目标IP对应的MAC地址，会向这个...]]></description><category></category></item></channel></rss>