<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[willlu10的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/willlu10</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; willlu10]]></copyright><item><title><![CDATA[2020 社招  JAVA面试题总结]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106930270</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106930270</guid><author>willlu10</author><pubDate>Tue, 23 Jun 2020 19:32:29 +0800</pubDate><description><![CDATA[先说些感想：

1.找工作是持久战（自己水平缺少不高，所以遇到了很多挫折，找工作也不是很顺利）。

不要轻易放弃，尤其是在今年这样不好的大环境下，更有做好持久战的准备。其实有些坎儿，扛过去了人就上了一个台阶儿。就像很多NBA球员，经历过一次总决赛、拿了次总冠军之后，在下赛季往往能打出更好的表现。一是更自信了，二是经历了挫折的洗礼。所以大家在面对挫折实在坚持不下去的时候，告诉自己咬牙再坚持一下。


2.适当拔高简历。

简历是入场券，是获得面试机会的钥匙。没有面试机会，一切都是扯淡。

所以如果你有...]]></description><category></category></item><item><title><![CDATA[AOF RDB进阶]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106866448</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106866448</guid><author>willlu10</author><pubDate>Sat, 20 Jun 2020 00:26:21 +0800</pubDate><description><![CDATA[AOF/RDB

RDB是快照文件（被压缩的二进制文件）

AOF保存的是redis指令

如：set msg “hello”

RDB保存的是key value

AOF 保存的是整个指令

RDB:

redis服务器在启动的时候会检测RDB文件，如果RDB文件存在就会自动导入RDB文件。

AOF进行持久化的时候更新频率更高，数据更全，所以如果AOF持久化开启，会优先使用AOF来还原数据。



SAVE 命令和BGSAVE指令用于生产RDB文件。

SAVE会堵塞redis服务器，BGSAVE通..]]></description><category></category></item><item><title><![CDATA[仅仅反转字母]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106862127</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106862127</guid><author>willlu10</author><pubDate>Fri, 19 Jun 2020 18:51:23 +0800</pubDate><description><![CDATA[Reverse an array without affecting special characters



Given a string, that contains special character together with alphabets (‘a’ to ‘z’ and ‘A’ to ‘Z’), reverse the string in a way that special characters are not affected.



Examples:



Input: ch...]]></description><category></category></item><item><title><![CDATA[JDK1.8中 ConcurrentHashMap 中的CAS 和 synchronized是如何使用的]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106721364</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106721364</guid><author>willlu10</author><pubDate>Fri, 12 Jun 2020 21:25:49 +0800</pubDate><description><![CDATA[CAS：在判断数组中当前位置为null的时候，使用CAS来把这个新的Node写入数组中对应的位置

synchronized ：当数组中的指定位置不为空时，通过加锁来添加这个节点进入数组(链表&lt;8)或者是红黑树（链表&gt;=8）

详细过程看下面源码


    final V putVal(K key, V value, boolean onlyIfAbsent) {
        if (key == null || value == null) throw new NullPointerEx]]></description><category></category></item><item><title><![CDATA[2020年6月9日-10日 面试]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106697515</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106697515</guid><author>willlu10</author><pubDate>Fri, 12 Jun 2020 00:04:28 +0800</pubDate><description><![CDATA[9号、10号各一个面试，把自己答得不好或者没答上的题整理了一下



2020年6月9号

一面

redis大key的问题

HTTPS的流程



二面

代理模式的思想（感觉自己没说到点上）

NIO（我感觉我说的没毛病，但是也确实有点生疏了，复习一下）

Lock（同上）

sleep和wait的区别（只说了前两点）



2020年6月10号

垃圾回收器CMS

编程题最短路径和：最短路径：https://leetcode-cn.com/problems/minimum-path-sum/...]]></description><category></category></item><item><title><![CDATA[HTTPS笔记]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106693783</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106693783</guid><author>willlu10</author><pubDate>Thu, 11 Jun 2020 17:54:54 +0800</pubDate><description><![CDATA[对称&amp;非对称

对称加密： 私钥加密，公钥解密

非对称加密： 公钥加密，只能私钥解密



如果HTTPS是对称 +非对称



服务器端有自己的公钥和私钥

步骤：

1.客户端向服务器端索要公钥

2.客户端拿服务器的公钥对数据num进行加密

3.传给服务器用他的私钥解密数据num

4.用这个num作为key，进行对称加密进行数据传输。



中间人问题

如果采用上面这种，会产生中间人问题

黑客拦截在服务器和客户端之间，用他自己的公钥和私钥，黑客既可以扮演服务器，也可以扮演...]]></description><category></category></item><item><title><![CDATA[Java实现布隆过滤器]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106615065</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106615065</guid><author>willlu10</author><pubDate>Mon, 08 Jun 2020 12:25:15 +0800</pubDate><description><![CDATA[一、介绍



1.描述



标识阶段

1.定义一个位的数组

2.使用多个hash函数计算hash值并取模

3.将每个hash函数的取模的结果所对应的标志位置位1



过滤阶段

1.使用多个hash函数计算要查询数据的hash值并取模

2.在位数组中寻找，多个值对应的多个为是否全是1，如果有一个不是1就说明不存在该值



2.使用场景

解决缓存穿透问题、网页黑名单过滤、垃圾邮件过滤等



3.布隆过滤器的误差

因为布隆过滤器的自身特点，可能会存在误差。当布隆过滤器的返回值为f...]]></description><category></category></item><item><title><![CDATA[常见的RuntimeException异常]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/106524952</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/106524952</guid><author>willlu10</author><pubDate>Wed, 03 Jun 2020 15:59:07 +0800</pubDate><description><![CDATA[1.NullPointerException 空指针异常

空指针异常非常常见，在业实际务场景中经常出现


String ss=null;
ss.equals("str");





2.ArrayIndexOutOfBoundsException数组索引越界异常

ArrayList中只有1个数据，最大索引是0，当获取下标为1的数时，就会ArrayIndexOutOfBoundsException


ArrayList arrayList = new ArrayList();
ar...]]></description><category></category></item><item><title><![CDATA[斐波那契]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82950080</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82950080</guid><author>willlu10</author><pubDate>Sat, 06 Oct 2018 11:57:56 +0800</pubDate><description><![CDATA[ 

 


   public static long fib(int n){
        if (n==0){
            return 0;
        }
        if (n==1){
            return 1;
        }

        long fibA=0;
        long fibB=1;
        long f...]]></description><category></category></item><item><title><![CDATA[约瑟夫问题]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82950075</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82950075</guid><author>willlu10</author><pubDate>Sat, 06 Oct 2018 11:57:13 +0800</pubDate><description><![CDATA[
public class Josephs {
    static class Node{
        Node next;
        int data;
        public Node(int data){
            this.data=data;
        }
    }
    public static int josephs(Node head,i...]]></description><category></category></item><item><title><![CDATA[两数之和]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82950068</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82950068</guid><author>willlu10</author><pubDate>Sat, 06 Oct 2018 11:56:28 +0800</pubDate><description><![CDATA[

import java.util.HashMap;

public class twoSum {
    public static int[] twoSum(int[] nums, int target) {
        HashMap&amp;lt;Integer,Integer&amp;gt; m = new HashMap();
        int res[] = new int[2];
  ...]]></description><category></category></item><item><title><![CDATA[回文数]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82950061</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82950061</guid><author>willlu10</author><pubDate>Sat, 06 Oct 2018 11:55:28 +0800</pubDate><description><![CDATA[ 

 



public class isPalindrome {
    public static boolean isPalindrome(int x) {
        if (x&amp;lt;0 || (x!=0 &amp;amp;&amp;amp; x%10==0)) return false;
        int rev = 0;
        while (x&amp;gt;rev){
      ...]]></description><category></category></item><item><title><![CDATA[Manacher算法]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82949040</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82949040</guid><author>willlu10</author><pubDate>Sat, 06 Oct 2018 09:30:53 +0800</pubDate><description><![CDATA[ 


代码链接：https://www.jianshu.com/p/494d7603cac4
解析  ：https://blog.youkuaiyun.com/zzkksunboy/article/details/72600679

代码如下：


public class Manacher {
    public static String longestPalindrome(String string...]]></description><category></category></item><item><title><![CDATA[BIO与NIO、AIO的区别]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82944228</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82944228</guid><author>willlu10</author><pubDate>Fri, 05 Oct 2018 15:00:08 +0800</pubDate><description><![CDATA[参考文章1https://blog.youkuaiyun.com/skiof007/article/details/52873421

参考文章2http://ifeve.com/java-nio-vs-io/]]></description><category></category></item><item><title><![CDATA[ArrayList扩容]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82915319</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82915319</guid><author>willlu10</author><pubDate>Mon, 01 Oct 2018 15:32:19 +0800</pubDate><description><![CDATA[ 

面试的时候面试官让自己设计一个ArrayList，做的一塌糊涂，在秋招路上继续补强

一.ArrayList的属性


   private static final long serialVersionUID = 8683452581122892189L;

    /**
     * 默认长度
     */
    private static final int DEFAULT_C...]]></description><category></category></item><item><title><![CDATA[KMP]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82845693</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82845693</guid><author>willlu10</author><pubDate>Tue, 25 Sep 2018 21:43:29 +0800</pubDate><description><![CDATA[ 

KMP




public class KMP {
    public static int kmp(String str, String dest,int[] next){//str文本串  dest 模式串
        for(int i = 0, j = 0; i &amp;lt; str.length(); i++){
            while(j &amp;gt; 0 &amp;amp;...]]></description><category></category></item><item><title><![CDATA[求n个数字的前K个数或者求中位数]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82845454</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82845454</guid><author>willlu10</author><pubDate>Tue, 25 Sep 2018 21:41:51 +0800</pubDate><description><![CDATA[
中位数


public class median {

    private boolean bOdd;//是否奇偶数
    private int kv;//k值
    private double medium;
    int partition(double a[], int low, int high) {
        double tmp = a[low];
      ...]]></description><category></category></item><item><title><![CDATA[JDBC]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/82820640</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/82820640</guid><author>willlu10</author><pubDate>Sun, 23 Sep 2018 10:51:58 +0800</pubDate><description><![CDATA[

import org.junit.Test;

import java.sql.*;

/**
 * Created by Administrator on 2017/7/24.
 */
public class A {
    // sql :insert del update

    @Test
    public void add(){
        Connection conn...]]></description><category></category></item><item><title><![CDATA[动态代理]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/81489311</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/81489311</guid><author>willlu10</author><pubDate>Tue, 07 Aug 2018 21:52:09 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/maoyuanming0806/article/details/80186248]]></description><category></category></item><item><title><![CDATA[MySQL优化]]></title><link>https://blog.youkuaiyun.com/willlu10/article/details/81411694</link><guid>https://blog.youkuaiyun.com/willlu10/article/details/81411694</guid><author>willlu10</author><pubDate>Sat, 04 Aug 2018 15:41:48 +0800</pubDate><description><![CDATA[应付面试

https://blog.youkuaiyun.com/u013087513/article/details/77899412

 

.自己学习

(转)学习MySQL优化原理，这一篇就够了！

原文：https://mp.weixin.qq.com/s__biz=MzI4NTA1MDEwNg==&amp;amp;mid=2650763421&amp;amp;idx=1&amp;amp;sn=2515421f09c15...]]></description><category></category></item></channel></rss>