<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[iteye_17895的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/iteye_17895</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; iteye_17895]]></copyright><item><title><![CDATA[Reverse Words in a String]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82580466</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82580466</guid><author>iteye_17895</author><pubDate>Fri, 23 May 2014 17:09:51 +0800</pubDate><description><![CDATA[
Given an input string, reverse the string word by word.
For example,Given s = &quot;the sky is blue&quot;,return &quot;blue is sky the&quot;.
Clarification:

 

What constitutes a word?A sequence of non-space char...]]></description><category></category></item><item><title><![CDATA[Java堆排序]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82579396</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82579396</guid><author>iteye_17895</author><pubDate>Mon, 12 May 2014 19:07:04 +0800</pubDate><description><![CDATA[
    /**
     * 确保parent最大
     * 
     * @param array
     * @param parentIndex 父节点
     * @param endIndex  最大节点
     */
    private static void maxHeapify(int[] array, int parentIndex, int e...]]></description><category></category></item><item><title><![CDATA[插入排序]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82578593</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82578593</guid><author>iteye_17895</author><pubDate>Sun, 04 May 2014 20:37:24 +0800</pubDate><description><![CDATA[
import java.util.Arrays;

public class InsertionSort {
	private static int[] insertionSort(int[] array){
		if(array == null || array.length &amp;lt;= 1){
			return array;
		}else{
			for(int i=1;...]]></description><category></category></item><item><title><![CDATA[面试难题：Java中整数的范围和大小]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82578587</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82578587</guid><author>iteye_17895</author><pubDate>Sun, 04 May 2014 19:12:45 +0800</pubDate><description><![CDATA[
从进入百度后到现在，一直在参与公司和部门的面试工作，包括校招、社招。最开始做面试的时候，一直
苦恼该如何来确认面试者的技术水平，java的内容就那么一点，网上到处流传着各大互联网各种各样的面试笔试题，各培训机构甚至有专门的针对面试的培训，凡此种种都加大了面试官筛选的难度。
为了提高面试的效率，便自己整了一套题，由易到难进行排序，以便区分不同的层次。然而面试时间长了
之后，发现摆在最前面的一...]]></description><category></category></item><item><title><![CDATA[MySQL如何使用索引]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82577560</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82577560</guid><author>iteye_17895</author><pubDate>Wed, 23 Apr 2014 15:52:58 +0800</pubDate><description><![CDATA[
     给定特定的列的值查找满足条件的行，索引的使用能够加快查找的速度。如果没有索引，MySQL将从第一行记录开始，穿越整个表找到相应的记录，表越大，相应的查询的代价也就越大。如果针对查询中的列有索引，MySQL就能在数据文件中快速确定需要查找的位置，再也不用穿越整个表来捞数据了。如果一个表有1000条数据，这样至少能比整表顺序读取捞数据快100倍。如果你的查询结果包含了整表的大部分记录，它也...]]></description><category></category></item><item><title><![CDATA[spring启动]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82577448</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82577448</guid><author>iteye_17895</author><pubDate>Tue, 22 Apr 2014 21:15:23 +0800</pubDate><description><![CDATA[
    spring的启动和关闭是通过在web.xml中注册启动监听器org.springframework.web.context.ContextLoaderListener来实现的，该类实现了接口javax.servlet.ServletContextListener。伴随web容器的启动和关闭，管理Spring的根org.springframework.web.context.WebApp...]]></description><category></category></item><item><title><![CDATA[js数组中逗号的奥义]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82521502</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82521502</guid><author>iteye_17895</author><pubDate>Sun, 21 Jul 2013 14:24:22 +0800</pubDate><description><![CDATA[
    在创建一个js数组时，如果在数组的头部出现一个逗号或者中间出现两个相邻的逗号，都会被识别为一个未知的元素，其初始值为undefined，如下所示：
var a = [, '1', '2',,'4']; //数组的长度为5,其中a[0],a[3]的值均为undefined
    如果是在数组的尾部包含有一个逗号，该逗号会被直接忽略，在代码执行的过程中也不会出现任何异常如下所示：
 ...]]></description><category></category></item><item><title><![CDATA[javascript中的undefined与null]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82521497</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82521497</guid><author>iteye_17895</author><pubDate>Sun, 21 Jul 2013 13:49:08 +0800</pubDate><description><![CDATA[
        在javascript中声明一个变量而未赋值时，值会被设定为undefined，试图取得一个未定义变量会导致一个控制台ReferenceError例外错误被抛出：
var a;
console.log(&quot;The value of a is &quot; + a); // logs &quot;The value of a is undefined&quot;
console.log(&quot;The value...]]></description><category></category></item><item><title><![CDATA[javascript中字符串、数字之间的转换与操作]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82521496</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82521496</guid><author>iteye_17895</author><pubDate>Sun, 21 Jul 2013 13:36:35 +0800</pubDate><description><![CDATA[
        在包含加法运算符的数字和字符串表达式中，JavaScript会把数字值转换为字符串。例如，假设有如下的语句：
 
x = &quot;The answer is &quot; + 42 // &quot;The answer is 42&quot;
y = 42 + &quot; is the answer&quot; // &quot;42 is the answer&quot;
 
 
        在包含其它运算符（译注：如下面的“-”）...]]></description><category></category></item><item><title><![CDATA[二叉树的广度优先遍历]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520993</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520993</guid><author>iteye_17895</author><pubDate>Wed, 17 Jul 2013 22:39:56 +0800</pubDate><description><![CDATA[
二叉树的广度优先遍历可以简单的理解为按层遍历，每层依次从左至右遍历，其实现如下：
 
public class TreeNode{
    //左子节点
    private TreeNode leftChild = null;
    //右子节点
    private TreeNode rightChild = null;
    //节点数据
    private i...]]></description><category></category></item><item><title><![CDATA[二叉树的前序遍历]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520601</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520601</guid><author>iteye_17895</author><pubDate>Mon, 15 Jul 2013 23:08:10 +0800</pubDate><description><![CDATA[
二叉树的前序遍历主要规则是：
1. 先访问父节点，左子节点次之，又子节点再次之；
2. 如果子节点包含子节点，对子节点进行前序遍历
 
代码实现如下：
 
public class TreeNode{
    //左子节点
    private TreeNode left = null;

    //又子节点
    private TreeNode right = ...]]></description><category></category></item><item><title><![CDATA[原地整数交换]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520588</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520588</guid><author>iteye_17895</author><pubDate>Mon, 15 Jul 2013 22:03:11 +0800</pubDate><description><![CDATA[
题目：将两个整数原地交换，不允许创建变量
 
解法：
        存在整数a、b，令x = a - b,  则交换公式为 b = x + b，a = b - x
 
 
代码如下

private void swapInPlace(int a, int b){
    a = a - b;
    b = b + a;
    a = b - a;
}
 
 
...]]></description><category></category></item><item><title><![CDATA[原地快速排序]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520584</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520584</guid><author>iteye_17895</author><pubDate>Mon, 15 Jul 2013 21:47:15 +0800</pubDate><description><![CDATA[
原地快速排序的步骤如下：
    1. 取序列中的任意值作为一个基准值；
    2. 将该基准值与序列的头或者尾进行交换；
    3. 将基准值之外的其他值与基准值进行比较，小于基准值的交换到序列前面，大于基准值的交换到序列后面；
    4. 将基准值交换到序列的分界线处；
    5. 将序列按基准值分为两部分分别进行快速排序；
 
 
代码如下：

private ...]]></description><category></category></item><item><title><![CDATA[归并排序]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520559</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520559</guid><author>iteye_17895</author><pubDate>Mon, 15 Jul 2013 19:59:17 +0800</pubDate><description><![CDATA[
       归并排序是将两个已经排序好的序列合并为一个已排序的序列，其操作步骤如下：
        1. 创建一个长度为两个序列长度之和的空间；
        2. 使用两个指针分别指向两个序列的起点；
        3. 比较两个指针所在位置的值，将较小的值依序放入新分配的空间；
        4. 当一个序列遍历完毕，将另一个序列剩下的数据全部依序摆入分配的空间；
 ...]]></description><category></category></item><item><title><![CDATA[将二进制的一段替换为另一段二进制]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520292</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520292</guid><author>iteye_17895</author><pubDate>Sun, 14 Jul 2013 11:21:43 +0800</pubDate><description><![CDATA[
题目：
        给定32bit的数字N、M，两个字节位i、j（0&amp;lt;i&amp;lt;j）。写一个算法将数字N的第i到j之间的bit值替换为数字M的bit值。
         例如下面的这个例子：
          int N = 0b10000000000, int M = 0b10101, int i = 2, int j = 6;
          替换的结果为 N = ...]]></description><category></category></item><item><title><![CDATA[获取二叉树中两个节点的最近公共祖先]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520244</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520244</guid><author>iteye_17895</author><pubDate>Sat, 13 Jul 2013 21:04:58 +0800</pubDate><description><![CDATA[
题目：获取一颗二叉树中任意两个节点的最近公共祖先
 
解答：
//二叉树节点对象
public class TreeNode{
    private TreeNode left = null;
    private TreeNode right = null;
    private int data = 0;

    public TreeNode  getLeft(...]]></description><category></category></item><item><title><![CDATA[矩阵旋转]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520119</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520119</guid><author>iteye_17895</author><pubDate>Fri, 12 Jul 2013 22:00:43 +0800</pubDate><description><![CDATA[
题目：使用一个N*N的矩阵来表示一张图面，图片中每一个像素是4 byte，编写一个方法将该图片原地旋转90度
 
解答：
        类似于剥洋葱的方式，从外层向里层逐一顺时针旋转
 
 
    private static void rotateAQuarter(int[][] matrix){
        if(matrix == null){
         ...]]></description><category></category></item><item><title><![CDATA[判断两个字符串是否由相同的字符组成]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82520101</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82520101</guid><author>iteye_17895</author><pubDate>Fri, 12 Jul 2013 20:00:07 +0800</pubDate><description><![CDATA[
题目：两个给定的字符串是否由相同的字符组成
 
解答1：将两个字符串排序，然后逐位比较；
 
解答2：
       判断两个字符串中字符的类型和各种类型的数量是否都相同
 
private boolean areAnagrams(char[] str0, char[] str1){
    if(str0 == null &amp;amp;&amp;amp; str1 == null){
...]]></description><category></category></item><item><title><![CDATA[删除字符串中的重复字符]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82519650</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82519650</guid><author>iteye_17895</author><pubDate>Wed, 10 Jul 2013 22:25:37 +0800</pubDate><description><![CDATA[
题目：删除一个字符串中重复字符，要求不能使用额外的缓冲区，不能复制字符串，可以使用一两个变量。
 
解答：
 
 
function String removeDuplicates(char[] str){
    if(str != null &amp;amp;&amp;amp; str.length &amp;gt; 1){
        for(int i=0; i&amp;lt;str.length-...]]></description><category></category></item><item><title><![CDATA[字符串反转]]></title><link>https://blog.youkuaiyun.com/iteye_17895/article/details/82519642</link><guid>https://blog.youkuaiyun.com/iteye_17895/article/details/82519642</guid><author>iteye_17895</author><pubDate>Wed, 10 Jul 2013 22:05:46 +0800</pubDate><description><![CDATA[
题目：将一个字符串反转
 
解答：
将字符串从头和尾分别同步向中间步进，每步进一次将对应的字符调换，直到走完整个字符串
 
 
private char[] reverse(char[] str){
    if(str != null &amp;amp;&amp;amp; str.length &amp;gt; 1){
        for(int i=0, j=(str.length-1); i...]]></description><category></category></item></channel></rss>