<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GD_Hacker的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GD_Hacker</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GD_Hacker]]></copyright><item><title><![CDATA[Redis要点记录]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/117589221</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/117589221</guid><author>GD_Hacker</author><pubDate>Sat, 14 Aug 2021 17:33:21 +0800</pubDate><description><![CDATA[rtret]]></description><category></category></item><item><title><![CDATA[整数中X出现的次数]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/82217909</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/82217909</guid><author>GD_Hacker</author><pubDate>Thu, 30 Aug 2018 11:39:54 +0800</pubDate><description><![CDATA[题目

求出任意非负整数区间[0,n]中X出现的次数（X等于0~9）。例如：0~13中包含1的数字有1、10、11、12、13因此共出现6次。



截取自牛客网中网友回答 
https://www.nowcoder.com/questionTerminal/bd7f978302044eee894445e244c7eee6

@nailperry

参考博文：http://www.cnblogs....]]></description><category></category></item><item><title><![CDATA[动态规划：连续子数组的最大和]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/82194179</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/82194179</guid><author>GD_Hacker</author><pubDate>Wed, 29 Aug 2018 23:41:02 +0800</pubDate><description><![CDATA[题目（来源）

给一个数组，返回它的最大连续子序列的和及其开始下标和结束下标。例如：{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8，从第0个开始,到第3个为止。





动态规划

public void FindGreatestSumOfSubArray(int[] array) {
    int preValue=0;
    int max=Integer.MIN_V...]]></description><category></category></item><item><title><![CDATA[动态规划：国王与金矿]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/82189004</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/82189004</guid><author>GD_Hacker</author><pubDate>Wed, 29 Aug 2018 21:46:51 +0800</pubDate><description><![CDATA[题目

有一个国家发现了5座金矿，每座金矿的黄金储量不同，需要参与挖掘的工人数也不同。参与挖矿工人的总数是10人。每座金矿要么全挖，要么不挖，不能派出一半人挖取一半金矿。要求用程序求解出，要想得到尽可能多的黄金，应该选择挖取哪几座金矿？



递归实现



动态规划

/**
* @param n 金矿数量
* @param w 工人数量
* @param p 第n个金矿需要工人数量
* @pa...]]></description><category></category></item><item><title><![CDATA[ArrayList源码分析]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81902192</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81902192</guid><author>GD_Hacker</author><pubDate>Tue, 21 Aug 2018 11:16:13 +0800</pubDate><description><![CDATA[部分成员变量


private static final int DEFAULT_CAPACITY = 10; 
默认数组大小
private static final Object[] EMPTY_ELEMENTDATA = {}; 
一个空的数组
private transient Object[] elementData; 
ArrayList实际上存储元素的数组
private int ...]]></description><category></category></item><item><title><![CDATA[阿里服务器部署]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81808469</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81808469</guid><author>GD_Hacker</author><pubDate>Sun, 19 Aug 2018 23:41:33 +0800</pubDate><description><![CDATA[1、选定服务器系统，购买轻量级服务器、域名，并进行域名实名认证，解析 
2、为管理员账户root设置密码，通过putty或其他软件远程登录 
3、进入/usr/local/bin目录，创建tools文件夹



cd /usr/local/bin
mkdir tools
cd tools/



4、下载JDK 1.8（其他版本都ok），注意是gz后缀，代表linux下的压缩文件 
5、使用fil...]]></description><category></category></item><item><title><![CDATA[JVM内存分布]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81607919</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81607919</guid><author>GD_Hacker</author><pubDate>Sun, 12 Aug 2018 23:25:03 +0800</pubDate><description><![CDATA[《深入理解Java虚拟机》第2章笔记





图为Java虚拟机内存划分情况。

程序计数器

当前线程所执行的字节码的行号指示器，通俗来说就是用于指示线程执行到程序的哪一步。在Java中，由于多个线程是轮流占用处理器，为了线程切换后能够恢复到正确的执行位置，每个线程都有一个独立的程序计数器用于保存各线程程序执行位置。所以该数据区是线程私有的。值得注意的是，该区域是唯一一个不会抛出OOM异常的区...]]></description><category></category></item><item><title><![CDATA[CentOS 7 常用命令]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80447403</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80447403</guid><author>GD_Hacker</author><pubDate>Sun, 12 Aug 2018 11:35:44 +0800</pubDate><description><![CDATA[基于CentOS 7最小化安装，环境为Win10 VirtualBox



查看网络接口卡信息：

ifconfig 
或 
ip addr和ip link

可能会出现 ifconfig command not found，因为该命令已经过时，默认情况下CentOS 7不存在包含该命令的包。解决：

查找哪个包包含该命令：yum provides ifconfig 
安装net-tools包：...]]></description><category></category></item><item><title><![CDATA[Java 7 ConcurrentHashMap源码解析]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81530405</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81530405</guid><author>GD_Hacker</author><pubDate>Sun, 12 Aug 2018 10:51:13 +0800</pubDate><description><![CDATA[记录阅读Java 7 ConcurrentHashMap源码的过程，阅读前建议先了解ConcurrentHashMap与HashMap异同，以及对ConcurrentHashMap大致结构有个印象。另外还需要了解Unsafe类，



部分关键成员变量


static final int DEFAULT_INITIAL_CAPACITY = 16; 
默认初始化容量，这里说的容量是指总容量，即每...]]></description><category></category></item><item><title><![CDATA[简单分析Class类文件]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81428877</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81428877</guid><author>GD_Hacker</author><pubDate>Sat, 11 Aug 2018 23:26:43 +0800</pubDate><description><![CDATA[阅读《深入理解Java虚拟机》第六章后，记录下使用WinHex工具分析二进制文件的过程。



源码沿用书中的例子：

public class Hex {

    private int m;

    public int inc(){
        return m+1;
    }
}

使用WinHex打开编译后的.class文件： 
 
首先需要知道的是：Class文件中只有两种数...]]></description><category></category></item><item><title><![CDATA[Java 7 HashMap源码解析]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81483508</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81483508</guid><author>GD_Hacker</author><pubDate>Wed, 08 Aug 2018 11:05:53 +0800</pubDate><description><![CDATA[记录阅读Java 7 HashMap源码过程，Java 7 与 Java 8 两个版本的源码区别比较大，主要是Java 8 中引入了红黑树存储。本篇只对get()方法和put()方法进行解析。



分析两个方法前，先认识HashMap几个关键的成员变量


static final int DEFAULT_INITIAL_CAPACITY = 1 &amp;amp;lt;&amp;amp;lt; 4; 
默认的初始化容量，1&amp;amp;...]]></description><category></category></item><item><title><![CDATA[AES加解密例子]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81353684</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81353684</guid><author>GD_Hacker</author><pubDate>Thu, 02 Aug 2018 16:39:11 +0800</pubDate><description><![CDATA[基于javax.crypto包的AES加解密工具类：



AES加密

/**
 * @param cleartext 待加密明文
 * @param keyLength 密钥长度：128、192、256（密钥长度与安全性成正比，与性能成反比）
 * @param workingPattern 工作模式
 * @param fillStyle 填充模式
 * @return java.lang....]]></description><category></category></item><item><title><![CDATA[UUID压缩]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81216169</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81216169</guid><author>GD_Hacker</author><pubDate>Fri, 27 Jul 2018 09:24:25 +0800</pubDate><description><![CDATA[关于UUID概念，截取百度百科简单说明一下（已经理解概念的直接跳转）：


  UUID（Universally Unique Identifier）通用唯一识别码，目的是让分布式系统中的所有元素，都能有唯一的辨识信息，可作为数据库id等。由三部分组成： 
  （1）当前日期和时间，UUID的第一个部分与时间有关，如果你在生成一个UUID之后，过几秒又生成一个UUID，则第一个部分不同，其余相同。...]]></description><category></category></item><item><title><![CDATA[大数A+B]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/81152455</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/81152455</guid><author>GD_Hacker</author><pubDate>Sun, 22 Jul 2018 22:56:13 +0800</pubDate><description><![CDATA[

给出2个大整数A,B，计算A+B的结果。



Input

第1行：大数A 
第2行：大数B 
(A,B的长度 &amp;amp;lt;= 10000 需注意：A B有可能为负数）



Output

输出A + B



Input示例

68932147586
468711654886

Output示例

537643802472





解法1



public class Main {
  ...]]></description><category></category></item><item><title><![CDATA[VirtualBox配置 NAT+Host Only网络]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80961159</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80961159</guid><author>GD_Hacker</author><pubDate>Mon, 09 Jul 2018 11:51:48 +0800</pubDate><description><![CDATA[发行版：Cent-OS7 x64 
实现目的：配置NAT令虚拟机访问外网；配置Host Only网络，使得本机可以访问虚拟机。





配置NAT

添加NAT网络： 


配置虚拟机网卡： 


启动虚拟机，输入 ls /etc/sysconfig/network-scripts/ 命令： 


ifcfg-enp0s3是我们NAT网卡的配置文件，不同的系统版本可能文件名称不一样，文件名称也可...]]></description><category></category></item><item><title><![CDATA[[编程题]重构二叉树]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80719840</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80719840</guid><author>GD_Hacker</author><pubDate>Sun, 17 Jun 2018 18:41:32 +0800</pubDate><description><![CDATA[题目(来源)

输入某二叉树的前序遍历和中序遍历的结果，请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6}，则重建二叉树并返回。

要求

时间限制：1秒 
空间限制：32768K

代码

/**
 * @param pre 前序数组
 * @param preStart ...]]></description><category></category></item><item><title><![CDATA[理解String类的intern()方法]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80541782</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80541782</guid><author>GD_Hacker</author><pubDate>Fri, 01 Jun 2018 20:15:48 +0800</pubDate><description><![CDATA[测试环境：eclipse+JDK 1.8

测试例子：

public static void main(String[] args){
    String s1=new String(&amp;quot;a&amp;quot;)+new String(&amp;quot;b&amp;quot;); //1
    System.out.println(s1.intern()==s1); //2

    String s2=new String(&amp;quot;a&amp;quot;)+new ..]]></description><category></category></item><item><title><![CDATA[广州YY面经]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80369671</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80369671</guid><author>GD_Hacker</author><pubDate>Sun, 20 May 2018 17:14:15 +0800</pubDate><description><![CDATA[时间：2018/5/18 15:00 
地点：广州番禺万达广场B-1座23楼 
职位：Java攻城狮实习生 
结果：怀疑人生 
反省：基础基础基础不扎实！！！



面经（渣渣没有二面）： 
1、说说jdk虚拟机 
2、年轻代和老年代 
3、你知道哪些回收算法 
4、static修饰的变量放哪 
5、你了解哪些集合 
6、说说ConcurrentHashMap与HashTable的区别 
7、TC...]]></description><category></category></item><item><title><![CDATA[java单例模式几种实现方法]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80379049</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80379049</guid><author>GD_Hacker</author><pubDate>Sun, 20 May 2018 17:04:48 +0800</pubDate><description><![CDATA[java单例模式中，留意几个关键点：构造方法私有化，单例对象变量需要static修饰，借助公有方法获取单例对象。另外也需要考虑线程是否安全，是否为延迟加载。



饿汉模式



public class Hungry{
    private final static Hungry instance=new Hungry();
    private Hungry(){}
    public ...]]></description><category></category></item><item><title><![CDATA[Java死锁例子]]></title><link>https://blog.youkuaiyun.com/GD_Hacker/article/details/80347415</link><guid>https://blog.youkuaiyun.com/GD_Hacker/article/details/80347415</guid><author>GD_Hacker</author><pubDate>Thu, 17 May 2018 11:33:23 +0800</pubDate><description><![CDATA[产生死锁的四个条件：占有等待、互斥、循环等待、非剥夺。

Java死锁栗子：

public class Main {
    //两把钥匙
    static Object key1 = new Object();
    static Object key2 = new Object();

    public static void method1() {
        System....]]></description><category></category></item></channel></rss>