<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[学习笔记]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/uarielc</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; uarielc]]></copyright><item><title><![CDATA[构建二叉树、二叉树的深度、广度优先遍历]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/48686199</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/48686199</guid><author>uarielc</author><pubDate>Wed, 23 Sep 2015 19:57:44 +0800</pubDate><description><![CDATA[根据数组构造二叉树，并深度遍历和广度遍历二叉树：import java.util.ArrayDeque;public class BinaryTree {    static class TreeNode {
        int value;
        TreeNode left;
        TreeNode right;        public TreeNode(int val]]></description><category></category></item><item><title><![CDATA[重建二叉树]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/48678159</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/48678159</guid><author>uarielc</author><pubDate>Wed, 23 Sep 2015 11:53:28 +0800</pubDate><description><![CDATA[给定一棵二叉树，假设每个节点都用唯一的字符来表示。 
假设已经有了前序遍历和中序遍历的结果，希望通过一个算法重建这棵树。 
前序遍历结果：a b d c e f 
中序遍历结果：d b a e c f/*
 * 根据前序和中序遍历重建二叉树，并输出后序遍历
 */
public class RebuildBinaryTree {    public static void main(String[]]]></description><category></category></item><item><title><![CDATA[Java获取键盘输入的三种方法]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/48286073</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/48286073</guid><author>uarielc</author><pubDate>Tue, 08 Sep 2015 08:47:32 +0800</pubDate><description><![CDATA[Java获取键盘输入的三种方法：import java.util.Scanner;public class Test01 {    public static void main(String args[]) {
        // Java获取键盘输入方法一：
        // System.in.read()只能针对一个字符的获取
        /*System.out.println(]]></description><category></category></item><item><title><![CDATA[排序算法（七）希尔排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47955763</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47955763</guid><author>uarielc</author><pubDate>Tue, 25 Aug 2015 17:01:57 +0800</pubDate><description><![CDATA[希尔排序是插入排序的一种。Shell排序的中心思想是将数据进行分组，然后对每一组数据进行排序，在每一组数据都有序之后，就可以对所有的分组利用插入排序进行最后一次排序。这样可以显著减少数据交换的次数，以达到加快排序速度的目的。希尔排序基本思想： 
先取一个小于n的整数d1作为第一个增量，把文件的全部记录分成d1个组，所以距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序；然后取第二个增量]]></description><category></category></item><item><title><![CDATA[排序算法（六）归并排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47953921</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47953921</guid><author>uarielc</author><pubDate>Mon, 24 Aug 2015 17:11:36 +0800</pubDate><description><![CDATA[归并排序指的是将两个已经排序的序列合并成一个序列的操作。归并排序具体工作的原理如下（假设序列共有n个元素）： 
1）将序列每相邻的两个数字进行归并操作（merge），形成floor（n/2）个序列，排序后每个序列包含两个元素。 
2）将上述序列再次归并，形成floor（n/4）个序列，每个序列包含四个元素。 
3）重复步骤2，直到所有的元素排序完毕。Java实现归并排序算法：package com.]]></description><category></category></item><item><title><![CDATA[排序算法（五）二分排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47952557</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47952557</guid><author>uarielc</author><pubDate>Mon, 24 Aug 2015 16:01:47 +0800</pubDate><description><![CDATA[二分排序是指折半插入排序。当直接插入排序进行到某一趟时，对于r[i].key来讲，前边i-1个记录已经按关键字有序。此时不用直接插入排序的方法，而改为二分折半查找，找出r[i].key应插入的位置，然后插入。Java实现二分排序算法：package com.review.sort;public class BinarySort {    public static void main(String[]]></description><category></category></item><item><title><![CDATA[排序算法（四）插入排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47950649</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47950649</guid><author>uarielc</author><pubDate>Mon, 24 Aug 2015 14:30:02 +0800</pubDate><description><![CDATA[一般来说，插入排序都采用in-place在数组上实现。具体算法描述如下： 
1）从第一个元素开始，该元素可以认为已经被排序。 
2）取出下一个元素，在已经排序的元素序列中从后向前扫描。 
3）如果该元素（已排序）大于新元素，则将该元素移到下一位置。 
4）重复步骤3，直到找到已排序的元素小于或者等于新元素的位置。 
5）将新元素插入到该位置中。 
6）重复步骤2。算法分析： 
如果目标是把n个元素的]]></description><category></category></item><item><title><![CDATA[排序算法（三）选择排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47949757</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47949757</guid><author>uarielc</author><pubDate>Mon, 24 Aug 2015 13:26:58 +0800</pubDate><description><![CDATA[选择排序是一种简单直观的排序算法。它的工作原理如下：首先在未排序序列中找到最小元素，存放到排序序列的起始位置，然后，再从剩余未排序元素中继续寻找最小元素，放到排序序列末尾。以此类推，直到所有的元素均排序完毕。算法分析： 
选择排序的交换操作介于0和n-1次之间；选择排序的比较操作为n(n-1)/2次之间；选择排序的赋值操作介于0和3(n-1)次之间；其最差、平均时间复杂度都为O(n^2)。 
空间复]]></description><category></category></item><item><title><![CDATA[排序算法（二）冒泡排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47838347</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47838347</guid><author>uarielc</author><pubDate>Fri, 21 Aug 2015 18:19:24 +0800</pubDate><description><![CDATA[Java实现冒泡排序算法：public class BubbleSort {    public static void bubbleSort(int[] source) {
        int i, j;
        boolean exchange;
        for (i = 0; i < source.length; i++) {
            exchange =]]></description><category></category></item><item><title><![CDATA[排序算法（一）快速排序]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/47784451</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/47784451</guid><author>uarielc</author><pubDate>Wed, 19 Aug 2015 18:04:39 +0800</pubDate><description><![CDATA[快速排序算法Java实现：public class QuickSort {    public static void quickSort(int source[], int low, int high) {
        int i, j, x;
        if (low < high) {
            i = low;
            j = high;]]></description><category></category></item><item><title><![CDATA[Android关于Bitmap的几个方法]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/43316793</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/43316793</guid><author>uarielc</author><pubDate>Fri, 30 Jan 2015 22:01:34 +0800</pubDate><description><![CDATA[1.保存Bitmap到SD卡
	private String ALBUM_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + "/";

	private void saveFile(Bitmap bm) throws IOException {
		File dirFile = new File(ALBUM_]]></description><category></category></item><item><title><![CDATA[Android自定义对话框]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/40143737</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/40143737</guid><author>uarielc</author><pubDate>Thu, 16 Oct 2014 10:06:32 +0800</pubDate><description><![CDATA[Android提供的对话框常常不能满足项目需求，]]></description><category></category></item><item><title><![CDATA[编程挑战（二）分配糖果]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/39587283</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/39587283</guid><author>uarielc</author><pubDate>Fri, 26 Sep 2014 21:53:37 +0800</pubDate><description><![CDATA[import java.util.Scanner;

/*
 * 思路：分治法。每一趟使相邻两个或三个小朋友满足rating值大于相邻rating值时糖果值大于相邻糖果值，直到最后一趟比较所有小朋友的糖果值都没有被修改（递归）。
 */
public class KidsCandy {

	private static int n;
	private static int[] r;
	privat]]></description><category></category></item><item><title><![CDATA[编程挑战（一）分数表示法]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/39583159</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/39583159</guid><author>uarielc</author><pubDate>Fri, 26 Sep 2014 17:10:12 +0800</pubDate><description><![CDATA[一.]]></description><category></category></item><item><title><![CDATA[android:shape 属性]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/39157749</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/39157749</guid><author>uarielc</author><pubDate>Tue, 09 Sep 2014 16:36:10 +0800</pubDate><description><![CDATA[<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape=["rectangle" | "oval" | "line" | "ring"] >
    <corners
        android:radius="integer"
        android:topLeft]]></description><category></category></item><item><title><![CDATA[android.view.InflateException: Binary XML file line #1: Error inflating class]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/39082159</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/39082159</guid><author>uarielc</author><pubDate>Fri, 05 Sep 2014 16:09:29 +0800</pubDate><description><![CDATA[第二次遇到这个问题，虽然不知道是为什么，]]></description><category></category></item><item><title><![CDATA[Android 4.0以下系统FrameLayout 子View setMargin失效]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/39006255</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/39006255</guid><author>uarielc</author><pubDate>Tue, 02 Sep 2014 14:52:17 +0800</pubDate><description><![CDATA[遇到4.0以上系统显示正常，4.0以下系统]]></description><category></category></item><item><title><![CDATA[Android Animation（一）XML属性]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/38944507</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/38944507</guid><author>uarielc</author><pubDate>Sat, 30 Aug 2014 15:16:34 +0800</pubDate><description><![CDATA[Android的两种Animation模式：
1.Tween]]></description><category></category></item><item><title><![CDATA[TextView setCompoundDrawables()]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/38922083</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/38922083</guid><author>uarielc</author><pubDate>Fri, 29 Aug 2014 11:33:28 +0800</pubDate><description><![CDATA[setCompoundDrawables(Drawable left, Drawable top,
                                     Drawable right, Drawable bottom)
    /**
     * Sets the Drawables (if any) to appear to the left of, above,
  ]]></description><category></category></item><item><title><![CDATA[This tag and its children can be replaced by one <TextView/> and a compound drawable]]></title><link>https://blog.youkuaiyun.com/uarielc/article/details/38920243</link><guid>https://blog.youkuaiyun.com/uarielc/article/details/38920243</guid><author>uarielc</author><pubDate>Fri, 29 Aug 2014 09:54:55 +0800</pubDate><description><![CDATA[写了一个这样的布局：]]></description><category></category></item></channel></rss>