<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[KeepThinking_的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/KeepThinking_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; KeepThinking_]]></copyright><item><title><![CDATA[闲来无事]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/12020605</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/12020605</guid><author>KeepThinking_</author><pubDate>Wed, 25 Sep 2013 17:42:36 +0800</pubDate><description><![CDATA[因为前段时间比较忙，才发现好久没有发过博文了，今天闲来无事，发篇不痛不痒的博文。
我觉得写博文主要就是想分享自己的学习心得和通过写博文来加深对知识点的掌握，有些触及小秘密的博文其实想通过加密的形式存在的，发现优快云上并不提供博文加密的功能，可能这个和网站的定位有关吧，不过还是希望有加入这个功能。
写博文应该也算是一种笔记的另一种表现形式吧，对于笔记这一块，我一直觉得是非常重要的，什么靠记忆不]]></description><category></category></item><item><title><![CDATA[JAVA String.format 方法使用介绍]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9271743</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9271743</guid><author>KeepThinking_</author><pubDate>Mon, 08 Jul 2013 14:41:40 +0800</pubDate><description><![CDATA[1.对整数进行格式化：%[index$][标识][最小宽度]转换方式

        我们可以看到，格式化字符串由4部分组成，其中%[index$]的含义我们上面已经讲过，[最小宽度]的含义也很好理解，就是最终该整数转化的字符串最少包含多少位数字。我们来看看剩下2个部分的含义吧：
标识： 
'-'    在最小宽度内左对齐，不可以与“用0填充”同时使用
'#'    只适用于8进制和1]]></description><category></category></item><item><title><![CDATA[蓝桥杯-买不到的数目]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9262825</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9262825</guid><author>KeepThinking_</author><pubDate>Sun, 07 Jul 2013 13:07:06 +0800</pubDate><description><![CDATA[扩展欧几里得算法的一种应用]]></description><category></category></item><item><title><![CDATA[代码集-字典树]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9231819</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9231819</guid><author>KeepThinking_</author><pubDate>Wed, 03 Jul 2013 11:12:11 +0800</pubDate><description><![CDATA[//字典树
public class DirectoryTree {
	//根结点
	private DirTreeNode root=new DirTreeNode();
	public static void main(String[] args) {
		DirectoryTree tree=new DirectoryTree();
		tree.insert("Hello");
		tre]]></description><category></category></item><item><title><![CDATA[蓝桥杯-火柴游戏]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9219447</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9219447</guid><author>KeepThinking_</author><pubDate>Mon, 01 Jul 2013 20:08:17 +0800</pubDate><description><![CDATA[【编程题】(满分34分)

    这是一个纵横火柴棒游戏。如图[1.jpg]，在3x4的格子中，游戏的双方轮流放置火柴棒。其规则是：




    1. 不能放置在已经放置火柴棒的地方（即只能在空格中放置）。

    2. 火柴棒的方向只能是竖直或水平放置。

    3. 火柴棒不能与其它格子中的火柴“连通”。所谓连通是指两根火柴棒可以连成一条直线，且中间没有其它不同]]></description><category></category></item><item><title><![CDATA[蓝桥杯-排日程]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9213327</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9213327</guid><author>KeepThinking_</author><pubDate>Mon, 01 Jul 2013 13:35:27 +0800</pubDate><description><![CDATA[【编程题】(满分32分)


    某保密单位机要人员 A，B，C，D，E 每周需要工作5天，休息2天。

    上级要求每个人每周的工作日和休息日安排必须是固定的，不能在周间变更。

    此外，由于工作需要，还有如下要求：

    1. 所有人的连续工作日不能多于3天（注意：周日连到下周一也是连续）。

    2. 一周中，至少有3天所有人都是上班的。]]></description><category></category></item><item><title><![CDATA[蓝桥杯-地铁换乘]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9168979</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9168979</guid><author>KeepThinking_</author><pubDate>Tue, 25 Jun 2013 13:05:29 +0800</pubDate><description><![CDATA[为解决交通难题，某城市修建了若干条交错的地铁线路，线路名及其所属站名如stations.txt所示。

线1
苹果园
....
四惠东

线2
西直门
车公庄
....
建国门

线4
....

其中第一行数据为地铁线名，接下来是该线的站名。
当遇到空行时，本线路站名结束。

下一行开始又是一条新线....直到数据结束。

如果多条线拥有同一个站名，表明]]></description><category></category></item><item><title><![CDATA[算法学习篇（未完）]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9135121</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9135121</guid><author>KeepThinking_</author><pubDate>Thu, 20 Jun 2013 13:52:55 +0800</pubDate><description><![CDATA[声明：所有题目都是自己曾经做过，也只作了部分测试，一定存在错漏之处，如能帮忙指出，感激不尽。其他题目等整理之后再更新
1.求一个数字的二进制表示有多少个1

public class CountOfOne {
	public static void main(String[] args) {
		//求一个数字的二进制表示有多少个1
		int number=-1;
		print(numb]]></description><category></category></item><item><title><![CDATA[简单经典算法笔记（未完）]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9134995</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9134995</guid><author>KeepThinking_</author><pubDate>Thu, 20 Jun 2013 10:45:17 +0800</pubDate><description><![CDATA[1.分解质因子
//分解质因子：6=2*3
public class IntegerSplitFactor {
	
	public static void main(String[] args) {
		int m=90;
		System.out.print(m+"=");
		split(m,0);
	}
	//递归思想如下:
	/*		90
	 * 	   2  45 
	 * 		 3]]></description><category></category></item><item><title><![CDATA[顺时针打印数字矩阵]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9123459</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9123459</guid><author>KeepThinking_</author><pubDate>Tue, 18 Jun 2013 20:44:41 +0800</pubDate><description><![CDATA[题意：
假如有矩阵（二维数组）：
1 2 
3 4
5 6 
7 8
9 10 
11 12
12 14 
15 16
则依次打印出数字：1,2,3,4,8,12,16,15,14,12,9,5,6,7,11,10
即顺时针打印。
几种需要注意的情况：
第一种：
1 2 
3
4 5 
6
结果为：1,2,3,6,5,4
第二种：
1
2
3
结果为：]]></description><category></category></item><item><title><![CDATA[算法笔记-链表]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9119491</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9119491</guid><author>KeepThinking_</author><pubDate>Tue, 18 Jun 2013 12:37:57 +0800</pubDate><description><![CDATA[链表结构如下：
struct ListNode{
int m_nValue;
ListNode * m_pNext;
};
1.输入一个链表，输出该链表中倒数第K个结点。


2.求链表的中间结点。如果链表中结点总数为奇数，返回中间结点，如果结点总数是偶数，返回中间两个结点的任意一个。


3.判断一个单向链表是否形成了环形结构。（如果是环形结构，则尾结点的下一个结点不一定是]]></description><category></category></item><item><title><![CDATA[随笔：实现一个队列，使得取出最大值的时间复杂度较低]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9107961</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9107961</guid><author>KeepThinking_</author><pubDate>Sun, 16 Jun 2013 20:48:38 +0800</pubDate><description><![CDATA[该题是《编程之美》中的题目，最后提供的方法看起来挺好玩的，书里的代码看起来好像实现不了，做了下小调整，整成java的，测试可以实现功能。取出最大值的时间复杂度为O（1）。
这个题有几种解法，如引入最大堆，这样取出最大值的时间复杂度为O（1），入队列和出队列的时间复杂度要O(log2N)
提供一种解法：
用栈结构实现取出最大值功能比较简单，而用两个栈可以实现一个队列的功能，所以这道题就用两个具]]></description><category></category></item><item><title><![CDATA[随笔：设计一个栈结构，使得取出栈中最大值时间复杂度为O(1)]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9107697</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9107697</guid><author>KeepThinking_</author><pubDate>Sun, 16 Jun 2013 20:07:42 +0800</pubDate><description><![CDATA[题意：设计一个数据结构，符合栈的特点，即“后进先出”，且加多一个要求，使得取出该栈所有元素最大值的时间复杂度可以控制为O(1)。


说个很明显的错误，使用一个辅助变量，保存当前最大值，每次入栈的值都与该最大值比较，大则替换为最大值。
这样取出最大值则返回该辅助变量，很显然这个只能实现一次正确返回。


总体实现很简单，就是开辟多一个存储最大值索引的栈，该栈和存储数据的栈保持同步，即]]></description><category></category></item><item><title><![CDATA[求两个DNA的距离-最短编辑距离变形]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9106725</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9106725</guid><author>KeepThinking_</author><pubDate>Sun, 16 Jun 2013 18:12:12 +0800</pubDate><description><![CDATA[题意如下：
脱氧核糖核酸即常说的DNA，是一类带有遗传信息的生物大分子。它由4种主要的脱氧核苷酸(dAMP、dGMP、dCMT和dTMP)通过磷酸二酯键连接而成。这4种核苷酸可以分别记为：A、G、C、T。

DNA携带的遗传信息可以用形如：AGGTCGACTCCA.... 的串来表示。DNA在转录复制的过程中可能会发生随机的偏差，这才最终造就了生物的多样性。

为了简化问题，我们假设，D]]></description><category></category></item><item><title><![CDATA[如何提高学习效率]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/9068605</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/9068605</guid><author>KeepThinking_</author><pubDate>Sun, 09 Jun 2013 22:44:41 +0800</pubDate><description><![CDATA[学得时间长并不一定有用，问题的关键是：你的单位时间内的学习效率有多高
      看着同学们一天到晚都在学习，但为什么效果不佳？这是一个学习中的老大难问题，也是最令家长、老师、学生感到困惑的问题。解答这个问题的钥匙就是利用效率法则——高效利用时间，提高学习效率。
      在伏尔泰的作品中曾经提到过一个谜语：“世界上有一样东西，它是最长的也是最短的，它是最快的也是最慢的，它最不受重视但却又最]]></description><category></category></item><item><title><![CDATA[随笔：蓝桥杯比赛题目-第39级台阶]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/8984424</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/8984424</guid><author>KeepThinking_</author><pubDate>Tue, 28 May 2013 14:13:21 +0800</pubDate><description><![CDATA[题目标题: 第39级台阶

    小明刚刚看完电影《第39级台阶》，离开电影院的时候，他数了数礼堂前的台阶数，恰好是39级!

    站在台阶前，他突然又想着一个问题：

    如果我每一步只能迈上1个或2个台阶。先迈左脚，然后左右交替，最后一步是迈右脚，也就是说一共要走偶数步。那么，上完39级台阶，有多少种不同的上法呢？

    请你利用计算机的优势，帮助小明寻找答案。]]></description><category></category></item><item><title><![CDATA[第四届蓝桥杯编程题:带分数]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/8947014</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/8947014</guid><author>KeepThinking_</author><pubDate>Sun, 19 May 2013 16:33:22 +0800</pubDate><description><![CDATA[标题：带分数

    100 可以表示为带分数的形式：100 = 3 + 69258 / 714

    还可以表示为：100 = 82 + 3546 / 197

    注意特征：带分数中，数字1~9分别出现且只出现一次（不包含0）。

    类似这样的带分数，100 有 11 种表示法。

题目要求：
从标准输入读入一个正整数N (N
程序输出该数字用数码1~9]]></description><category></category></item><item><title><![CDATA[哈夫曼编码(java版)]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/8872339</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/8872339</guid><author>KeepThinking_</author><pubDate>Wed, 01 May 2013 16:38:15 +0800</pubDate><description><![CDATA[哈夫曼树又叫最优二叉树，是一类带权路径最短的二叉树。哈夫曼树是二叉树的一种应用，在信息检索中很常用。
哈夫曼树可以用来解决报文编码问题，在通信领域有着非常广泛的运用。具体什么是带权路径二叉树，什么是哈夫曼编码这里不做介绍，这里只介绍代码，必须先知道这些概念才能阅读代码！
以下为全部代码，做了比较详细的注释，所以不做另外解释
节点类：
package huffman_binary_tree;]]></description><category></category></item><item><title><![CDATA[循环小数]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/8828565</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/8828565</guid><author>KeepThinking_</author><pubDate>Sat, 20 Apr 2013 17:16:05 +0800</pubDate><description><![CDATA[1/7 = 0.142857142... 是个无限循环小数。
任何有理数都可以表示为无限循环小数的形式。

本题目要求即是：给出一个数字的循环小数表示法。

例如：
输入：
1,5
则输出：
0.2
输入：
1,7
则输出：
0.[142857]
输入：
7,6
则输出:
1.1[6]

用户输入的格式是：
整数,整数


每个整数范围均为：1~100]]></description><category></category></item><item><title><![CDATA[矩阵运算]]></title><link>https://blog.youkuaiyun.com/KeepThinking_/article/details/8826909</link><guid>https://blog.youkuaiyun.com/KeepThinking_/article/details/8826909</guid><author>KeepThinking_</author><pubDate>Sat, 20 Apr 2013 09:08:36 +0800</pubDate><description><![CDATA[在编写图形界面软件的时候，经常会遇到处理两个矩形的关系。

    如图【1.jpg】所示，矩形的交集指的是：两个矩形重叠区的矩形，当然也可能不存在（参看【2.jpg】）。两个矩形的并集指的是：能包含这两个矩形的最小矩形，它一定是存在的。






本题目的要求就是：由用户输入两个矩形的坐标，程序输出它们的交集和并集矩形。

    矩形坐标的输入格式是输入两个对角点坐标，]]></description><category></category></item></channel></rss>