<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[大爷没钱]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Patrick_1993</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Patrick_1993]]></copyright><item><title><![CDATA[高级排序（希尔、归并、快排、堆排）]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82711594</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82711594</guid><author>Patrick_1993</author><pubDate>Sat, 15 Sep 2018 10:33:04 +0800</pubDate><description><![CDATA[高级排序（希尔、归并、快排、堆排）

本文内容：



一、希尔排序
二、归并排序
    1. 最初版本
    2. 优化
三、快速排序
    1. 最初版本
    2. 优化
    3. 二路快排
    4. 三路快排
四、堆排序
五、实验对比




  排序算法
  时间复杂度（一般情况下）
  最坏情况下
  最好情况下
  空间复杂度
  稳定性



  希尔排序
  O(...]]></description><category></category></item><item><title><![CDATA[基础排序（选择、插入、冒泡）]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82698781</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82698781</guid><author>Patrick_1993</author><pubDate>Fri, 14 Sep 2018 10:32:24 +0800</pubDate><description><![CDATA[基础排序（选择、插入、冒泡）

一、选择排序

选择排序概况：



时间复杂度：
    最好情况下 O(n^2)
    最坏情况下 O(n^2)
空间复杂度：
    O(1)
稳定性：
    不稳定



1.

每次遍历都选出当前最小值，放入到相应的位置。



public static void sort(Comparable[] arr) {
    for (int i = 0...]]></description><category></category></item><item><title><![CDATA[TCP 和 UDP 浅析理解]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82690044</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82690044</guid><author>Patrick_1993</author><pubDate>Thu, 13 Sep 2018 16:21:23 +0800</pubDate><description><![CDATA[TCP 和 UDP 浅析理解


  本文为笔者的学习整理总结，因此，若有任何不严谨或错误之处，还望不吝指出！


本文内容：



一、TCP 详解
    1. 三次握手建立连接
        1.1 解释
        1.2 常见问题
            （1）为何是三次握手，能不能是两次握手？
            （2）如果连接建立，但是客户端突然出现故障怎么办？
     ...]]></description><category></category></item><item><title><![CDATA[最长公共子串方法及优化]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82684566</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82684566</guid><author>Patrick_1993</author><pubDate>Thu, 13 Sep 2018 10:54:56 +0800</pubDate><description><![CDATA[最长公共子串



问题

link 牛客网 - 问题链接

对于两个字符串，请设计一个时间复杂度为 O(m*n) 的算法(这里的m和n为两串的长度)，求出两串的最长公共子串的长度。这里的最长公共子串的定义为两个序列U1,U2,..Un和V1,V2,...Vn，其中Ui + 1 == Ui+1,Vi + 1 == Vi+1，同时Ui == Vi。

给定两个字符串A和B，同时给定两串的长度n和m。...]]></description><category></category></item><item><title><![CDATA[Java 内存模型和多线程]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82670887</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82670887</guid><author>Patrick_1993</author><pubDate>Thu, 13 Sep 2018 00:58:25 +0800</pubDate><description><![CDATA[Java 内存模型和多线程


  本文为笔者的学习整理，若有任何不严谨或错误之处，还望不吝指出！


本文内容：



一、硬件的效率与一致性
二、Java 内存模型
    2.1 volatile
        2.1.1 特性
        2.1.2 效率
    2.2 原子性、可见性与有序性
三、Java 与线程
    3.1 线程的实现
    3.2 Java 线程调度
 ...]]></description><category></category></item><item><title><![CDATA[HTTP协议浅析(8种请求方法、GET和POST区别、幂等性、HTTP和HTTPS)]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82633726</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82633726</guid><author>Patrick_1993</author><pubDate>Tue, 11 Sep 2018 22:14:50 +0800</pubDate><description><![CDATA[HTTP 协议、及其 8 种请求方法、GET 和 POST 区别、HTTP 和 HTTPS 浅析


  本文为笔者学习整理总结，若有任何不严谨或错误之处，还望不吝指出！


本文内容：



一、什么是 HTTP 协议？
二、8 种请求方法
三、GET 和 POST 区别？
四、HTTP 和 HTTPS ？



一、什么是 HTTP 协议？

HTTP 协议是 Hyper Text Trans...]]></description><category></category></item><item><title><![CDATA[腾讯大楼抛玻璃球问题]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82623771</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82623771</guid><author>Patrick_1993</author><pubDate>Tue, 11 Sep 2018 12:00:37 +0800</pubDate><description><![CDATA[腾讯大楼抛玻璃球问题



问题

腾讯大厦有39层，你手里有两颗一抹一眼的玻璃珠。当你拿着玻璃珠在某一层往下扔的时候，一定会有两个结果，玻璃珠碎了或者没碎。大厦有个临界楼层。低于它的楼层，往下扔玻璃珠，玻璃珠不会碎，等于或高于它的楼层，扔下玻璃珠，玻璃珠一定会碎。玻璃珠碎了就不能再扔。现在让你设计一种方式，使得在该方式下，最坏的情况扔的次数比其他任何方式最坏的次数都少。也就是设计一种最有效的方式...]]></description><category></category></item><item><title><![CDATA[通过浏览器访问百度全过程]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82345970</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82345970</guid><author>Patrick_1993</author><pubDate>Mon, 03 Sep 2018 11:10:27 +0800</pubDate><description><![CDATA[通过浏览器访问百度全过程


  本文为笔者的学习整理总结，因此若有任何不严谨或错误之处，还望不吝指教！


本文内容：



1. DNS 域名解析
2. 向服务器请求数据
3. 涉及的协议



1. DNS 域名解析

首先，需要将 www.baidu.com 通过 DNS 解析获得百度的 IP 地址。

那什么是 DNS (Domain Name System，域名系统)：


因特网上作...]]></description><category></category></item><item><title><![CDATA[JAVA 的 final 与 C++ 的 const 的区别？]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82320252</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82320252</guid><author>Patrick_1993</author><pubDate>Sun, 02 Sep 2018 22:27:50 +0800</pubDate><description><![CDATA[JAVA 的 final 与 C++ 的 const 的区别？



1. 修饰类


final 可以用来修饰类，代表该类不能被继承，其内部成员函数也就不能被重构。
const 不能够用来修饰类。




2. 修饰函数


final 修饰函数，代表该函数不能够被重构。
const 在函数中的运用，主要还是用来修饰变量，比如返回值、参数。




3. 修饰变量


修饰变量时，两者基本相同。...]]></description><category></category></item><item><title><![CDATA[生产者与消费者模式的概念、运用、3种实现]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82316705</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82316705</guid><author>Patrick_1993</author><pubDate>Sun, 02 Sep 2018 16:38:29 +0800</pubDate><description><![CDATA[生产者与消费者模式的概念、运用、3种实现


  本文为笔者的学习整理总结，因此，若有任何不严谨或错误之处，还望不吝指教！


内容：

一、 概念
二、 运用
三、 实现
    1. Sychronized、wait、notify
    2. ReentrantLock
    3. BlockingQueue



一、概念

生产者与消费者模式的核心在于生产者与消费者的关系解藕，生产者与...]]></description><category></category></item><item><title><![CDATA[HashMap 的多方位浅析]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82121284</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82121284</guid><author>Patrick_1993</author><pubDate>Tue, 28 Aug 2018 00:37:52 +0800</pubDate><description><![CDATA[HashMap 的多方位浅析


  写在前面，本文为笔者学习整理总结，若有不严谨或错误之处，还望不吝指教！


本文内容：



一、 存储结构
    1. JDK 1.8 以前
    2. JDK 1.8 之后
二、 地址计算、长度总是2的整次幂问题、hash计算、扰动函数
三、 put、putVal 函数
    1. JDK 1.8 以前
    2. JDK 1.8 之后
四、 re...]]></description><category></category></item><item><title><![CDATA[ArrayList、LinkedList、Vector区别总结与源码浅析]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82056660</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82056660</guid><author>Patrick_1993</author><pubDate>Sat, 25 Aug 2018 23:43:05 +0800</pubDate><description><![CDATA[ArrayList、LinkedList、Vector 区别总结与源码浅析


  写在前面，本文为笔者学习整理总结，因此，若有任何不严谨或错误之处，还望不吝指教！


本文内容：



一、区别总结
二、源码浅析
    1. ArrayList
    2. LinkedList
    3. Vector



一、区别总结


ArrayList，底层采用数组构建，因此决定了擅随机访问，弱...]]></description><category></category></item><item><title><![CDATA[http 与 https 的区别、优劣、原理浅析]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/82021972</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/82021972</guid><author>Patrick_1993</author><pubDate>Fri, 24 Aug 2018 17:10:40 +0800</pubDate><description><![CDATA[http 与 https 的区别、优劣、原理浅析


  写在前面，本文为笔者学习整理总结，因此，若有不严谨或错误之处，望不吝指教。


本文内容：



一. http 和 https 的区别
二. https 如何工作？
三. https 的优劣？



一. http 和 https 的区别

简单来说，http 是基于 TCP 的无连接、无状态的 HTTP 协议，而 https 则是基于在...]]></description><category></category></item><item><title><![CDATA[虚拟机类加载机制]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/81989856</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/81989856</guid><author>Patrick_1993</author><pubDate>Thu, 23 Aug 2018 23:28:39 +0800</pubDate><description><![CDATA[虚拟机类加载机制


  写在前面，本文为笔者学习整理总结，因此若有不严谨或错误之处，还望不吝指点。


本文内容：



一、类加载过程
   1. 加载
   2. 验证
   3. 准备
   4. 解析
   5. 初始化
二、类加载器
   1. 双亲委派模型
   2. 自定义加载器
引用



一. 类加载过程

虚拟机类加载机制就是将描述类的数据从 Class 文件加载到内存，并对...]]></description><category></category></item><item><title><![CDATA[Java 垃圾收集机制（GC）——对象判定、收集算法、垃圾收集器]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/81986764</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/81986764</guid><author>Patrick_1993</author><pubDate>Thu, 23 Aug 2018 19:44:54 +0800</pubDate><description><![CDATA[Java 垃圾收集机制


  写在前面：本文权当笔者学习 Java 过程的总结整理，因此，若有不严谨、错误之处，还望不吝指出。


垃圾收集（Garbage Collection, GC），内存分配与回收技术已自动化，但当垃圾收集成为系统达到更高并发量的瓶颈时，就需要我们对GC实施必要的监控和调节。

主要内容：



一. 判定回收对象
    1. 引用判定算法
    2. 引用对象类型
...]]></description><category></category></item><item><title><![CDATA[原码、反码、补码]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/81265309</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/81265309</guid><author>Patrick_1993</author><pubDate>Sat, 28 Jul 2018 20:59:50 +0800</pubDate><description><![CDATA[原码、反码、补码


  因为人类有十个手指头可以用来辅助计算，因此，人类的计数方式都采用十进制。


内容：


原码
反码
补码




1. 原码

我们都知道计算机的内部计数是建立在二进制之上，那么为了能够表示正负数，用数码序列中的最高位作为符号位，0 代表整数，1 代表负数。

以 8 位的序列为例：




  最高位
  其余位
  十进制



  0
  0000001
  1
...]]></description><category></category></item><item><title><![CDATA[通过前序、中序、后序相结合、水平序列 构建二叉树]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/81212635</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/81212635</guid><author>Patrick_1993</author><pubDate>Thu, 26 Jul 2018 00:25:44 +0800</pubDate><description><![CDATA[通过前序、中序、后序相结合构建二叉树

前序、中序、后序共有三种结合方式，但是前序 + 后序构建的二叉树并不唯一。




  结合方式
  构建的二叉树
  LeetCode



  前序 + 中序
  唯一
  link


  前序 + 后序
  不唯一
  N/A


  中序 + 后序
  唯一
  link






前序 + 中序

由于前序总是会先访问根节点再访问该根节点的左子...]]></description><category></category></item><item><title><![CDATA[String、StringBuilder、StringBuffer 理解]]></title><link>https://blog.youkuaiyun.com/Patrick_1993/article/details/81193440</link><guid>https://blog.youkuaiyun.com/Patrick_1993/article/details/81193440</guid><author>Patrick_1993</author><pubDate>Tue, 24 Jul 2018 22:09:04 +0800</pubDate><description><![CDATA[String、StringBuilder、StringBuffer

写在前面： 本文权当笔者学习 Java 过程的记录和总结，因此，若有不严谨、错误之处，还望不吝指出。

内容：


String
StringBuffer 和 StringBuffer
三者比较




1. String

先说结论：


  
  String 类 final 修饰，并且其通过 final char[] 进行...]]></description><category></category></item></channel></rss>