<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[别忘了初衷]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/originalIntention</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; originalIntention]]></copyright><item><title><![CDATA[很不错的一个汉诺塔演示动画（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8233600</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8233600</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 11:20:19 +0800</pubDate><description><![CDATA[/**
 * 盘子类
 * @author Sking
 */
package component.Animation.HannoiTower;

import java.awt.*;

public class Disk extends Button {
	int number;
	boolean 上方有盘 = false;

	/**
	 *Disk类的构造方法
	 * @param numb]]></description><category></category></item><item><title><![CDATA[Java日期操作（待补充）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8233580</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8233580</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 11:15:25 +0800</pubDate><description><![CDATA[/**
 * Java日期/时间处理类
 * @author Sking
 */
package datetime;

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class DateUtil {
	/*****-----------------Date操]]></description><category></category></item><item><title><![CDATA[数据结构之树-二叉树（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8233489</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8233489</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 11:03:06 +0800</pubDate><description><![CDATA[/**
 * 链接二叉树的结点
 */
package 树.二叉树;

public class BinaryTreeNode {
	private Object element;//结点元素
	private  BinaryTreeNode leftChild;//左子树 
	private  BinaryTreeNode rightChild; //右子树

	/**
	 * 无参构造函数]]></description><category></category></item><item><title><![CDATA[数据结构之堆]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8233476</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8233476</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 10:59:40 +0800</pubDate><description><![CDATA[/**
 * 数据结构学习之队列之最大优先级队列接口
 * @author Sking
 */
package 堆;

public interface MaxPriorityQueue {
	/**
	 * 判断最大优先级队列是否为空
	 * @return 最大优先级队列为空则返回true，否则false
	 */
	public boolean isEmpty();

	/**
	 * 返回]]></description><category></category></item><item><title><![CDATA[数据结构之并查集（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8233462</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8233462</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 10:57:02 +0800</pubDate><description><![CDATA[/**
 * 数据结构学习之并查集之数组并查集
 * @author Sking
 */
package 并查集;

public class ArrayUnionFind {
	static int[] equivClass;//元素数组，有效索引从1开始
	static int n; //并查集大小

	/**
	 * 根据指定的数组初始容量初始化并查集
	 * @param numberOf]]></description><category></category></item><item><title><![CDATA[Java程序工具之发射机制类信息打印器（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232492</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232492</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:20:11 +0800</pubDate><description><![CDATA[/**
 * @author Sking
 * 使用反射机制打印类信息
 */
package component.ReadAPI;
import java.lang.reflect.*;
import java.util.*;

public class GenericReflectionTest
{
   public static void main(String[] args)
   {]]></description><category></category></item><item><title><![CDATA[递归分治算法之二维数组二分查找（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232481</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232481</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:15:05 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法学习之二维二分查找
 * @author Sking

问题描述：
存在一个二维数组T[m][n]，每一行元素从左到右递增，
每一列元素从上到下递增,现在需要查找元素X（必在二维
数组中）在数组中的位置，要求时间复杂度不超过m+n.
 */
package 递归分治;

public class BinarySearchInArray {
	/**
	 * 二维二分搜索的]]></description><category></category></item><item><title><![CDATA[递归分治算法之线性选择（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232472</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232472</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:11:04 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法之线性选择
 */
package 递归分治;
/*
 * 线性选择算法
 * 给定线性序集中n个元素和一个整数k，1≤k≤n，要求找出这n个元素中第k小的元素
 * 在最坏情况下，算法randomizedSelect需要O(n2)计算时间,
 * 可以证明，算法randomizedSelect可以在O(n)平均时间内找出n个输入元素中的第k小元素。
 */
import]]></description><category></category></item><item><title><![CDATA[递归分治算法之比赛日程表（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232470</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232470</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:10:06 +0800</pubDate><description><![CDATA[package 递归分治;
//设有n=2^k个运动员进行循环赛，设计一个比赛日程表
//每个选手必须与其他n-1个选手各赛一次
//每个选手一天只能进行一场比赛
//循环赛一共要进行n-1天
//日程表设计成n行n-1列的表格，其中第i行j列表示第i个选手在第j天遇到的选手
public class round_robin {
	private static int[][] a;

	publi]]></description><category></category></item><item><title><![CDATA[递归分治算法之随机快速排序（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232467</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232467</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:08:55 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法学习之随机快速排序
 * 采用随机选择枢纽元素的快速排序算法
 * @author Sking
 */
package 递归分治;
import java.util.Random;
public class randomizedQuickSortTest {
	
	/**
	 * 采用随机选取枢纽元素策略的一次快排后的划分索引
	 * @param a 待排序数组
	 *]]></description><category></category></item><item><title><![CDATA[递归分治算法之合并排序算法2（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232463</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232463</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:07:35 +0800</pubDate><description><![CDATA[/**
 * 排序算法学习之一般合并排序
 * @author Sking

实现方法：
将待排序数组分为大小大致相等的2个子数组
分别对两个子数组进行排序，如此递归划分排序
最后将排序号的子数组再递归合并为更大的已排序数组
直到整个数组已排序为止。
 */
package 递归分治;

public class MergeSort2 {

	/**
	 * 对指定数组的指定范围执行一般合并排序]]></description><category></category></item><item><title><![CDATA[递归分治算法之合并排序（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232460</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232460</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:06:30 +0800</pubDate><description><![CDATA[/**
 * 排序算法学习之合并排序
 * @author Sking
 
 实现方法：
将待排序数组中相邻元素两两配对作为子数组，排序各个子数组，
 构成n/2组长度为2的排序好的子数组；然后将长度为2的子排序
 子数组再两两配对，并排序，构成长度为4的已排序子数组。如此递归
 直到整个数组是已排序为止。
 
  最坏时间复杂度：O(n*log(n))
  平均时间复杂度：O(n*log(n))]]></description><category></category></item><item><title><![CDATA[递归分治算法之矩阵链问题（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232453</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232453</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:05:06 +0800</pubDate><description><![CDATA[/**
 *递归分治算法之矩阵链
 *@author Sking 
 */
package 递归分治;

public class MatrixChainMultiplication {

	/**
	 * 递归分治问题之矩阵链问题
	 * @param s s[i][j]存放矩阵链[i-j]分开的位置
	 * @param p 矩阵链维度数组
	 * @param i 矩阵链左端索引
	 * @]]></description><category></category></item><item><title><![CDATA[递归分治算法之N皇后问题（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232450</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232450</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:03:53 +0800</pubDate><description><![CDATA[package 递归分治;
/*
 * 在n×n格的棋盘上放置彼此不受攻击的n个皇后。按照
 * 国际象棋的规则，皇后可以攻击与之处在同一行或同
 * 一列或同一斜线上的棋子。n后问题等价于在n×n格的
 * 棋盘上放置n个皇后，任何2个皇后不放在同一行或同
 * 一列或同一斜线上。
 * 解向量：(x1, x2, … , xn)
 * 显约束：xi=1,2, … ,n
 * 隐约束：
 *  1]]></description><category></category></item><item><title><![CDATA[递归分治算法之整数划分问题（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232445</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232445</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:02:41 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法学习之整数分割
 * @author Sking
 */
package 递归分治;

public class IntegerDivision {
	/**
	 * 整数划分的核心方法，返回整数n被划分为因子不大于m的划分总个数
	 * @param n 被划分的整数
	 * @param m 限制因子不大于m
	 * @return 划分的总个数
	 */
	publ]]></description><category></category></item><item><title><![CDATA[递归分治算法之全排列问题（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232441</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232441</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:01:32 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法学习之全排序
 * @author Sking
 */
package 递归分治;

public class FullPermutation {
	/**
	 * 产生指定数组指定索引范围的元素的全排列
	 * list[k....m]的全排列,在全排列中list[k..m]
	 * 中的任何一个元素都可能在索引k的位置上。
	 * 所以交换出list[k]的位置，相当]]></description><category></category></item><item><title><![CDATA[递归分治算法之棋盘分割问题（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232438</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232438</guid><author>originalIntention</author><pubDate>Wed, 28 Nov 2012 00:00:16 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法学习之分割棋盘
 * @author Sking
 
 棋盘分割问题：
  在一个2k×2k 个方格组成的棋盘中，恰有一个方格与其他方格
 不同，称该方格为一特殊方格，且称该棋盘为一特殊棋盘。在
 棋盘覆盖问题中，要用4种不同形态的L型骨牌覆盖给定的特殊棋盘
 上除特殊方格以外的所有方格，且任何2个L型骨牌不得重叠覆盖。
 */
package 递归分治;

public]]></description><category></category></item><item><title><![CDATA[递归分治算法之二分搜索（Java版本）]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8232436</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8232436</guid><author>originalIntention</author><pubDate>Tue, 27 Nov 2012 23:59:02 +0800</pubDate><description><![CDATA[/**
 * 递归分治算法学习之一维二分搜索
 * 被搜索的数组必须是有序的才能使用二分搜索算法
 * @author Sking
性能：
时间复杂度为O(log(n))
 */
package 递归分治;

public class BinarySearch {
	/**
	 * 在指定数组中搜索指定元素
	 * @param a 指定的数组
	 * @param x 待搜索的元素
	 * @r]]></description><category></category></item><item><title><![CDATA[字符串问题之串移包含问题<Java实现>]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8231620</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8231620</guid><author>originalIntention</author><pubDate>Tue, 27 Nov 2012 20:01:10 +0800</pubDate><description><![CDATA[/**
 * 字符和窜移位包含问题：
给定两个字符串s1（源字符串）和s2（目标字符串），
判断s2能否被通过s1作循环移位得到的字符串所包含。

1.循环移位，遍历各种可能，再判断字符串包含问题

2.利用性质（如果s2能被通过循环移位s1得到的字符串所包含，
则s2必须为s1.concat(s1)的字串）只要一次的字符串包含判断。

@author Sking
 */
package 字符串问]]></description><category></category></item><item><title><![CDATA[将浮点数表示的币值转换为人民币大写格式<Java实现>]]></title><link>https://blog.youkuaiyun.com/originalIntention/article/details/8231590</link><guid>https://blog.youkuaiyun.com/originalIntention/article/details/8231590</guid><author>originalIntention</author><pubDate>Tue, 27 Nov 2012 19:51:50 +0800</pubDate><description><![CDATA[/**
 *  将浮点数表示的币值转换为人民币大写格式
 *  @author Sking
 */


public class ToUpperRMB {
	/**
	 * 将浮点数表示的币值转换为人民币大写格式
	 * @param value
	 *            浮点数表示的币值,最多处理到小数点后两位
	 * @return String 币值的大写表示
	 */
	public]]></description><category></category></item></channel></rss>