<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[lcb1992的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/lcb1992</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lcb1992]]></copyright><item><title><![CDATA[dubbo学习笔记--dubbo用法]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/87891794</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/87891794</guid><author>lcb1992</author><pubDate>Sat, 23 Feb 2019 14:16:01 +0800</pubDate><description><![CDATA[1. 配置

1.1 本地服务 Spring 配置

local.xml:


&amp;lt;bean id=“xxxService” class=“com.xxx.XxxServiceImpl” /&amp;gt;
&amp;lt;bean id=“xxxAction” class=“com.xxx.XxxAction”&amp;gt;
    &amp;lt;property name=“xxxService” ref=“xxxS...]]></description><category></category></item><item><title><![CDATA[dubbo学习笔记之--dubbo架构]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/87890202</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/87890202</guid><author>lcb1992</author><pubDate>Sat, 23 Feb 2019 14:10:37 +0800</pubDate><description><![CDATA[1.1 dubbo架构



       图片来源：dubbo官方文档http://dubbo.apache.org/zh-cn/docs/user/preface/architecture.html

节点角色说明：

节点
			角色说明
		Provider
			暴露服务的服务提供方
		Consumer
			调用远程服务的服务消费方
		Registry
			服务注册与发现的注册中...]]></description><category></category></item><item><title><![CDATA[java/bitmap]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/70915952</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/70915952</guid><author>lcb1992</author><pubDate>Fri, 28 Apr 2017 15:34:54 +0800</pubDate><description><![CDATA[简介

    bitmap在很多海量数据处理的情况下会用到。一些典型的情况包括数据过滤，数据位设置和统计等。 它的引入和应用通常是考虑到海量数据的情况下，用普通的数组会超出数据保存的范围。使用这种位图的方式虽然不能在根本上解决海量数据处理的问题，但是在一定的数据范围内，它是一种有效的方法。bitmap在java的类库里有一个对应的实现：BitSet。我们会对bitmap的引入做一个介绍，然后]]></description><category></category></item><item><title><![CDATA[哈夫曼树的构造]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/70866771</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/70866771</guid><author>lcb1992</author><pubDate>Thu, 27 Apr 2017 18:11:58 +0800</pubDate><description><![CDATA[本文转自http://blog.youkuaiyun.com/qq_33990383/article/details/53073825




注意：哈夫曼树并不唯一，但带权路径长度一定是相同的。




（1）8个结点的权值大小如下：


（2）从19，21，2，3，6，7，10，32中选择两个权小结点。选中2，3。同时算出这两个结点的和5。






（3）从19]]></description><category></category></item><item><title><![CDATA[字符编码问题]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/70208854</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/70208854</guid><author>lcb1992</author><pubDate>Mon, 17 Apr 2017 11:05:36 +0800</pubDate><description><![CDATA[很多人都把Unicode编码挂在嘴边，其实咱们现实生活中遇到的编码基本都是Unicode的

因为Unicode兼容了大多数老版本的编码规范例如 ASCII

Unicode编码定义了这个世界上几乎所有字符（就是你眼睛看到的长那个样子的符号）的数字表示

也就是说Unicode为每个字符发了一张身份证，这张身份证上有一串唯一的数字ID确定了这个字符

在这个纷乱世界上存在的唯一性。]]></description><category></category></item><item><title><![CDATA[计算机中浮点数存储]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/70208144</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/70208144</guid><author>lcb1992</author><pubDate>Mon, 17 Apr 2017 10:19:29 +0800</pubDate><description><![CDATA[本文转自：http://hxraid.iteye.com/blog/504293


问题提出：12.0f-11.9f=0.10000038，"减不尽"为什么？

 

现在我们就详细剖析一下浮点型运算为什么会造成精度丢失？

 

1、小数的二进制表示问题

       首先我们要搞清楚下面两个问题：

     (1)  十进制整数如何转化为二进制数

  ]]></description><category></category></item><item><title><![CDATA[希尔排序详解]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/69788850</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/69788850</guid><author>lcb1992</author><pubDate>Sat, 08 Apr 2017 23:10:08 +0800</pubDate><description><![CDATA[目录

要点算法分析    希尔排序的算法性能    时间复杂度    算法稳定性    直接插入排序和希尔排序的比较完整参考代码    JAVA版本参考资料相关阅读

回到顶部
要点
希尔(Shell)排序又称为缩小增量排序，它是一种插入排序。它是直接插入排序算法的一种威力加强版。
该方法因DL．Shell于1959年提出而得名。
希尔排序的基本思想是：
把记录按步长 gap ]]></description><category></category></item><item><title><![CDATA[排序算法总结]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/69788821</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/69788821</guid><author>lcb1992</author><pubDate>Sat, 08 Apr 2017 23:07:09 +0800</pubDate><description><![CDATA[本文转自http://www.cnblogs.com/eniac12/p/5329396.html　　

目录

冒泡排序　　

鸡尾酒排序　　
选择排序插入排序

二分插入排序　　希尔排序　　
归并排序堆排序快速排序

 

　　我们通常所说的排序算法往往指的是内部排序算法，即数据记录在内存中进行排序。

　　排序算法大体可分为两种：

　　　　一种是比较排序]]></description><category></category></item><item><title><![CDATA[移位运算在算法中的简单应用]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/60964091</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/60964091</guid><author>lcb1992</author><pubDate>Thu, 09 Mar 2017 17:38:14 +0800</pubDate><description><![CDATA[一、位运算应用口诀

     清零取位要用与，某位置一可用或

     若要取反和交换，轻轻松松用异或

 

二、移位运算

    1、它们都是双目运算符，两个运算分量都是整形，结果也是整形。

    2、"

    3、">>"右移：右边的位被挤掉。对于左边移出的空位，如果是正数则空位补0，若为负数，可能补0或补1，这取决于所用的计算机系统，其值相当于除以]]></description><category></category></item><item><title><![CDATA[不使用第三个变量交换两个变量的值]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/60963927</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/60963927</guid><author>lcb1992</author><pubDate>Thu, 09 Mar 2017 17:32:53 +0800</pubDate><description><![CDATA[通常我们的做法是（尤其是在学习阶段）：定义一个新的变量，借助它完成交换。代码如下：
int a,b;
a=10; b=15;
int t;
t=a; a=b; b=t;
这种算法易于理解，特别适合帮助初学者了解计算机程序的特点，是赋值语句的经典应用。在实际软件开发当中，此算法简单明了，不会产生歧义，便于程序员之间的交流，一般情况下碰到交换变量值的问题，都应采用此算法（以下称为标准算法）。]]></description><category></category></item><item><title><![CDATA[为什么要有l两个Survivor区]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/60571955</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/60571955</guid><author>lcb1992</author><pubDate>Mon, 06 Mar 2017 10:43:07 +0800</pubDate><description><![CDATA[在我的上一篇博客中，介绍了JVM堆内存的结构以及在堆中进行的GC机制，链接是浅谈JAVA GC机制与性能优化

那么，在JVM的新生代内存中，为什么除了Eden区，还要设置两个Survivor区？

1 为什么要有Survivor区

先不去想为什么有两个Survivor区，第一个问题是，设置Survivor区的意义在哪里？ 


如果没有Survivor，Eden区每进行一次M]]></description><category></category></item><item><title><![CDATA[TCP/IP协议知识点整理]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/58105016</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/58105016</guid><author>lcb1992</author><pubDate>Mon, 27 Feb 2017 15:36:14 +0800</pubDate><description><![CDATA[CP/IP协议的工作流程如下：

●在源主机上，应用层将一串应用数据流传送给传输层。

●传输层将应用层的数据流截成分组，并加上TCP报头形成TCP段，送交网络层。

●在网络层给TCP段加上包括源、目的主机IP地址的IP报头，生成一个IP数据包，并将IP数据包送交链路层。

●链路层在其MAC帧的数据部分装上IP数据包，再加上源、目的主机的MAC地址和帧头，并根据其目的MAC地址]]></description><category></category></item><item><title><![CDATA[为什么新生代内存需要有两个Survivor区]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/56487886</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/56487886</guid><author>lcb1992</author><pubDate>Wed, 22 Feb 2017 16:19:47 +0800</pubDate><description><![CDATA[在我的上一篇博客中，介绍了JVM堆内存的结构以及在堆中进行的GC机制，链接是浅谈JAVA GC机制与性能优化

那么，在JVM的新生代内存中，为什么除了Eden区，还要设置两个Survivor区？

1 为什么要有Survivor区

先不去想为什么有两个Survivor区，第一个问题是，设置Survivor区的意义在哪里？ 


如果没有Survivor，Eden区每进行一次M]]></description><category></category></item><item><title><![CDATA[java虚拟机中的新生代和老年代]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/56288957</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/56288957</guid><author>lcb1992</author><pubDate>Tue, 21 Feb 2017 16:51:49 +0800</pubDate><description><![CDATA[摘要: 堆设置 -Xms :初始堆大小 -Xmx :最大堆大小 -XX:NewSize=n :设置年轻代大小 -XX:NewRatio=n: 设置年轻代和年老代的比值。如:为3，表示年轻代与年老代比值为1：3，年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n :年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如：3，表示Eden：Survi]]></description><category></category></item><item><title><![CDATA[Java中的递归原理分析]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/56037525</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/56037525</guid><author>lcb1992</author><pubDate>Mon, 20 Feb 2017 21:39:29 +0800</pubDate><description><![CDATA[解释：程序调用自身的编程技巧叫做递归。

程序调用自身的编程技巧称为递归（ recursion）。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法，它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解，递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算，大大地减少了程序的代码量。递归的能力在于用有限的语句来]]></description><category></category></item><item><title><![CDATA[理解递归]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/56016488</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/56016488</guid><author>lcb1992</author><pubDate>Mon, 20 Feb 2017 17:29:37 +0800</pubDate><description><![CDATA[用递归设计出来的程序总是简洁易读，极具美感。但是对于刚入门的学者来说，当遇到递归场景时，自己却难以正确的设计出合理的递归程序。博主曾经也是困惑不已，写的多了，也就渐渐的熟悉了递归设计。特谈一下自己的感受，有些术语是博主自己总结，有可能有不合理之处。




学习递归程序设计，建议首先应该从小规模的递归开始研究，小规模就是说自己可以调试跟踪代码，且自己不会晕。这个过程完成之后，才能熟练掌握]]></description><category></category></item><item><title><![CDATA[计算机中的有符号型和无符号型]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/54602179</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/54602179</guid><author>lcb1992</author><pubDate>Wed, 18 Jan 2017 16:10:05 +0800</pubDate><description><![CDATA[解有符号数和无符号数负数在计算机中如何表示呢？ 

这一点，你可能听过两种不同的回答。 

一种是教科书，它会告诉你：计算机用“补码”表示负数。可是有关“补码”的概念一说就得一节课，这一些我们需要在第6章中用一章的篇幅讲2进制的一切。再者，用“补码”表示负数，其实一种公式，公式的作用在于告诉你，想得问题的答案，应该如何计算。却并没有告诉你为什么用这个公式就可以和答案？ 

另一种是一些]]></description><category></category></item><item><title><![CDATA[信号掩码--]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/54318360</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/54318360</guid><author>lcb1992</author><pubDate>Tue, 10 Jan 2017 22:05:59 +0800</pubDate><description><![CDATA[一. Linux内部用一个128个字节(多个unsigned long)的结构(sigset_t)表示信号的掩码,在i386平台上就是128/4=32个long,每位对应一个信号的掩码,最大支持128*8
 = 1024个信号。现在只有64个信号，所以只要考虑最前面的两个long就可以了。
sigset_t mask;
unsigned long *pl = (unsigned long*)]]></description><category></category></item><item><title><![CDATA[getopt函数详解]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/54315711</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/54315711</guid><author>lcb1992</author><pubDate>Tue, 10 Jan 2017 17:15:39 +0800</pubDate><description><![CDATA[最近在弄Linux C编程，本科的时候没好好学啊，希望学弟学妹们引以为鉴。

好了，虽然啰嗦了点，但确实是忠告。步入正题:

我们的主角----getopt()函数。

英雄不问出处，getopt()函数的出处就是unistd.h头文件（哈哈）,写代码的时候千万不要忘记把他老人家include上。

 

再来看一下这家伙的原型（不是六耳猕猴）：

int getopt(i]]></description><category></category></item><item><title><![CDATA[getopt函数]]></title><link>https://blog.youkuaiyun.com/lcb1992/article/details/54315281</link><guid>https://blog.youkuaiyun.com/lcb1992/article/details/54315281</guid><author>lcb1992</author><pubDate>Tue, 10 Jan 2017 16:40:55 +0800</pubDate><description><![CDATA[getopt函数




getopt -- 解析命令的可选项
 
【说明】getopt只是一个简单的解析命令可选项的函数，只能进行简单的格式命令解析，格式如下：
 

1、形如：cmd [-a][-b] //对短选项的解析；
2、形如：cmd [-a a_argument][-b b_argument] //对短选项及短选项的参数解析；
3、形如：cmd [-a[a_ar]]></description><category></category></item></channel></rss>