<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zxman660的专栏]]></title><description><![CDATA[菜鸟终有逆袭日]]></description><link>https://blog.youkuaiyun.com/zxman660</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zxman660]]></copyright><item><title><![CDATA[JDBC连接数据库]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7948756</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7948756</guid><author>zxman660</author><pubDate>Wed, 05 Sep 2012 23:55:34 +0800</pubDate><description><![CDATA[JDBC连接数据库
   
•创建一个以JDBC连接数据库的程序，包含7个步骤：
   
 1、加载JDBC驱动程序：
   
    在连接数据库之前，首先要加载想要连接的数据库的驱动到JVM（Java虚拟机），   
    这通过java.lang.Class类的静态方法forName(String  className)实现。   
    例如：   
    try{]]></description><category></category></item><item><title><![CDATA[tomcat 配置方法]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940274</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940274</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:54:23 +0800</pubDate><description><![CDATA[随着java的流行，其在web上的应用也越来越广，tomcat作为一个开源的servlet容器，应用前景越来越广，本文将向你讲述tomcat的一些知识。
一：简介
tomcat是jakarta项目中的一个重要的子项目，其被JavaWorld杂志的编辑选为2001年度最具创新的java产品(Most Innovative Java Product)，同时它又是sun公司官方推荐的servlet和]]></description><category></category></item><item><title><![CDATA[集合框架源码分析六之堆结构的实现(PriorityQueue)]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940260</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940260</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:39:28 +0800</pubDate><description><![CDATA[/**
*
* 优先队列是用了一种叫做堆的高效的数据结构，
* 堆是用二叉树来描述的，对任意元素n，索引从0开始，如果有子节点的话，则左子树为
* 2*n+1,右子树为2*(n+1)。
* 以堆实现的队列如果不为空的话，queue[0]即为最小值。
* 
* PS:此优先队列中的元素并不是升序排列的，只能说是"基本有序"
* 但是queue[0]为树根而且必定是最小元素
*/]]></description><category></category></item><item><title><![CDATA[集合框架源码分析五之LinkedHashMap，LinkedHashSet]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940259</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940259</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:38:31 +0800</pubDate><description><![CDATA[LinkedHashMap是为了解决遍历Hash表的无序问题，它内部维护了一个链表用于记录你插入元素（或你访问元素的顺序）的位置，遍历时直接遍历链表，元素的顺序即为你插入的顺序，但是Entry对象要多加两个成员变量before和after用于记录链表的前驱和后继。所以LinkedHashMap的的存储效率要低于HashMap，但是遍历效率要高于HashMap。 


import java.]]></description><category></category></item><item><title><![CDATA[集合框架源码分析四(Collections类详细分析)]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940258</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940258</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:36:37 +0800</pubDate><description><![CDATA[我认为Collections类主要是完成了两个主要功能 
1.提供了若干简单而又有用的算法，比如排序，二分查找，求最大最小值等等。 
2.提供对集合进行包装的静态方法。比如把指定的集合包装成线程安全的集合、包装成不可修改的集合、包装成类型安全的集合等。 


package java.util;
import java.io.Serializable;
import java.io.]]></description><category></category></item><item><title><![CDATA[集合框架源码分析三(实现类篇ArrayList,LinkedList,HashMap)]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940246</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940246</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:34:25 +0800</pubDate><description><![CDATA[一。ArrayList，可自动扩充容量的动态数组 

public class ArrayList extends AbstractList implements List,
RandomAccess, Cloneable, java.io.Serializable {
private static final long serialVersionUID = 868345258112289]]></description><category></category></item><item><title><![CDATA[集合框架源码分析——抽象类]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940243</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940243</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:29:13 +0800</pubDate><description><![CDATA[public abstract class AbstractCollection implements Collection {
    /**
     * 唯一构造方法
     */
    protected AbstractCollection() {
    }


    // Query Operations


    /**
     *
     *]]></description><category></category></item><item><title><![CDATA[集合框架源码分析一(接口篇)]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940234</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940234</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:27:59 +0800</pubDate><description><![CDATA[一。Iterable接口 
public interface Iterable {


    /**
     * 实现此接口的所有集合都可以使用foreach循环
     * 由于Collection接口扩展自Iterable接口，
     * 标准类库的任何集合都可以使用"for each"循环
     * @return an Iterator.
     */]]></description><category></category></item><item><title><![CDATA[用动态数组模拟双向循环链表]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940233</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940233</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:19:43 +0800</pubDate><description><![CDATA[简单来说其实使用数组模拟LinkedList。同LinkedList的操作基本相似。 
基本原理为：数组存放Entry对象，包含数据部分，指针部分(数组下标) 
添加，删除基本操作改变指针。数组包含两个链表，一个备用链表(空数据，仅含指针)与 
实际存放数据的链表(即保存存入的数)。添加先从备用链表中获取一个空闲节点， 
移除把节点重新放入备用链表等待获取。采用ArrayList的数组自动]]></description><category></category></item><item><title><![CDATA[java中的排序算法——归并排序]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940227</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940227</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:18:11 +0800</pubDate><description><![CDATA[为什么使用归并排序？ 


java中的Arrays.sort(Object[] o)是对数组进行排序，它使用的是归并排序的方式， 
快速排序要比归并排序更快一些，但为什么使用归并排序了？原因是归并排序是一种稳定的排序 
方式，即归并排序不交换相同的元素，这就意味着，在按一种方式排序后同时可以按另外一种 
方式进行排序。比如员工可以首先按工资排序，然后按名字排序，一种排序不会打乱另一种]]></description><category></category></item><item><title><![CDATA[java中的排序算法——插入排序详解]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940217</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940217</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:14:58 +0800</pubDate><description><![CDATA[package com.algorithm;




/**
 * 插入排序及其变体
 * 
 * List可转化为数组进行排序
 * Object数组中的元素必须实现Comparable接口，即元素必须是可比的
 */
public class InsertSort {

/**
* 直接插入排序
*/
public static void insertSort(]]></description><category></category></item><item><title><![CDATA[java中的排序算法——简单选择排序，树形选择排序与堆排序（一）]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940215</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940215</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:12:52 +0800</pubDate><description><![CDATA[package com.sort;


/**
 * 选择排序：
 * 简单选择排序，树形选择排序与堆排序
 * 
 */
public class SelecSortDemo {

/**
* --------------------------------------------
* 简单选择排序
* 原理：假设列表中有n个元素，从第一个元素开始，在第一个元素
*]]></description><category></category></item><item><title><![CDATA[哈弗曼树的实现]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940205</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940205</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:10:07 +0800</pubDate><description><![CDATA[提到哈弗曼树就必须提到节点权值，权值一般具有实际意义，比如此节点出现的概率，次数等。 
必须提供权值才能构建出一棵哈弗曼树，因为哈弗曼树的定义为带权路径长度最小的二叉树。 
树的带权路径长度为所有叶子节点的带权路径长度。 
节点的带权路径长度为该节点到树的路径长度乘以节点权值。 
哈希曼树最主要的应用是产生哈希曼编码。 
为特点元素设计哈希曼编码要求二进制编码尽可能的短，并且任意一个字符]]></description><category></category></item><item><title><![CDATA[二叉排序树的实现——java]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940198</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940198</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:06:25 +0800</pubDate><description><![CDATA[package com.utils;


import java.util.Iterator;
import java.util.NoSuchElementException;


/**
 * 二叉排序树，也可以成为二叉查找树
 * 它的性质如下：
 * 1.若它的左子树不为空，则左子树上所有的节点均小于其根节点
 * 2.若它的右子树不为空，则右子树上所有的节点的值均大于]]></description><category></category></item><item><title><![CDATA[java实现平衡二叉树(详细分析)]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940190</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940190</guid><author>zxman660</author><pubDate>Tue, 04 Sep 2012 00:03:28 +0800</pubDate><description><![CDATA[package com.utils;
import java.util.Iterator;
import java.util.NoSuchElementException;
/**
 * 平衡二叉树
 * 定义:首先它是一种特殊的二叉排序树，其次它的左子树和右子树都是平衡二叉树，
 * 且左子树和右子树的深度之差不超过1
 * 平衡因子:可以定义为左子树的深度减去右子树的深度
 * 
 * 平衡二]]></description><category></category></item><item><title><![CDATA[java二叉树的运用]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940162</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940162</guid><author>zxman660</author><pubDate>Mon, 03 Sep 2012 23:54:47 +0800</pubDate><description><![CDATA[树节点定义:

class TreeNode {
    public TreeNode left;

    public TreeNode right;

    public int value;

    public TreeNode(TreeNode left, TreeNode right, int value) {
        this.left = left;]]></description><category></category></item><item><title><![CDATA[java的23设计模式]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940158</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940158</guid><author>zxman660</author><pubDate>Mon, 03 Sep 2012 23:49:56 +0800</pubDate><description><![CDATA[|




1、工厂模式：客户类和工厂类分开。消费者任何时候需要某种产品，只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时，工厂类也要做相应的修改。如：如何创建及如何向客户端提供。  
　　2、建造模式：将产品的内部表象和产品的生成过程分割开来，从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化，客户不必知道产品内部组成的细]]></description><category></category></item><item><title><![CDATA[java 实现二叉树操作]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7940152</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7940152</guid><author>zxman660</author><pubDate>Mon, 03 Sep 2012 23:48:32 +0800</pubDate><description><![CDATA[java实现二叉树的创建、先序遍历、中序遍历、后序遍历及二叉树的深度  








public class Tree {

 private int data;// 数据节点
 private Tree left;// 左子树
 private Tree right;// 右子树

 public Tree(int data) {
  this.data =]]></description><category></category></item><item><title><![CDATA[目前在线教育发展情况介绍]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7888002</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7888002</guid><author>zxman660</author><pubDate>Mon, 20 Aug 2012 20:29:58 +0800</pubDate><description><![CDATA[在线教育发展概况



在线教育是一个炙手可热的领域，几乎每隔几周就会有一个提供在线课程的创业公司宣布获得百万美元级投资，如本周旧金山又有一家名为UniversityNow的创业公司宣布融资1730万美元。而在过去的三个月中，美国至少有七家在线课程创业公司宣布推出产品或获得融资。
Gigiaom将这几家创业公司做了简单总结，其中大部分都在我们网站有过介绍或报道。以下是对这七家创业公司的概]]></description><category></category></item><item><title><![CDATA[7种从头开始免费学习编程的方法]]></title><link>https://blog.youkuaiyun.com/zxman660/article/details/7887992</link><guid>https://blog.youkuaiyun.com/zxman660/article/details/7887992</guid><author>zxman660</author><pubDate>Mon, 20 Aug 2012 20:25:01 +0800</pubDate><description><![CDATA[我们曾在一篇文章中讨论过不会编程算不算是文盲的问题，虽然有人认为这样有点说过头，但同时也不可否认如今编程确实显得越来越重要。比如作为设计师，懂一些编程可能会帮你更好地理解自己工作内容；而如果你想从头开始创业，技术创始人的身份则会让你的很多工作显得更容易。
无论想学什么，也无论出于什么目的想学，都需要你保持好奇心。但是作为刚想入门的新手，面对眼前海量的信息，或许根本不知道从哪里开始。以下就盘点几种]]></description><category></category></item></channel></rss>