- 博客(21)
- 资源 (3)
- 收藏
- 关注
原创 构建二叉树、二叉树的深度、广度优先遍历
根据数组构造二叉树,并深度遍历和广度遍历二叉树:import java.util.ArrayDeque;public class BinaryTree { static class TreeNode { int value; TreeNode left; TreeNode right; public TreeNode(int val
2015-09-23 19:57:44
602
原创 重建二叉树
给定一棵二叉树,假设每个节点都用唯一的字符来表示。 假设已经有了前序遍历和中序遍历的结果,希望通过一个算法重建这棵树。 前序遍历结果:a b d c e f 中序遍历结果:d b a e c f/* * 根据前序和中序遍历重建二叉树,并输出后序遍历 */public class RebuildBinaryTree { public static void main(String[]
2015-09-23 11:53:28
396
原创 Java获取键盘输入的三种方法
Java获取键盘输入的三种方法:import java.util.Scanner;public class Test01 { public static void main(String args[]) { // Java获取键盘输入方法一: // System.in.read()只能针对一个字符的获取 /*System.out.println(
2015-09-08 08:47:32
12925
原创 排序算法(七)希尔排序
希尔排序是插入排序的一种。Shell排序的中心思想是将数据进行分组,然后对每一组数据进行排序,在每一组数据都有序之后,就可以对所有的分组利用插入排序进行最后一次排序。这样可以显著减少数据交换的次数,以达到加快排序速度的目的。希尔排序基本思想: 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组,所以距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后取第二个增量
2015-08-25 17:01:57
488
原创 排序算法(六)归并排序
归并排序指的是将两个已经排序的序列合并成一个序列的操作。归并排序具体工作的原理如下(假设序列共有n个元素): 1)将序列每相邻的两个数字进行归并操作(merge),形成floor(n/2)个序列,排序后每个序列包含两个元素。 2)将上述序列再次归并,形成floor(n/4)个序列,每个序列包含四个元素。 3)重复步骤2,直到所有的元素排序完毕。Java实现归并排序算法:package com.
2015-08-24 17:11:36
499
原创 排序算法(五)二分排序
二分排序是指折半插入排序。当直接插入排序进行到某一趟时,对于r[i].key来讲,前边i-1个记录已经按关键字有序。此时不用直接插入排序的方法,而改为二分折半查找,找出r[i].key应插入的位置,然后插入。Java实现二分排序算法:package com.review.sort;public class BinarySort { public static void main(String[
2015-08-24 16:01:47
727
原创 排序算法(四)插入排序
一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下: 1)从第一个元素开始,该元素可以认为已经被排序。 2)取出下一个元素,在已经排序的元素序列中从后向前扫描。 3)如果该元素(已排序)大于新元素,则将该元素移到下一位置。 4)重复步骤3,直到找到已排序的元素小于或者等于新元素的位置。 5)将新元素插入到该位置中。 6)重复步骤2。算法分析: 如果目标是把n个元素的
2015-08-24 14:30:02
588
原创 排序算法(三)选择排序
选择排序是一种简单直观的排序算法。它的工作原理如下:首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,放到排序序列末尾。以此类推,直到所有的元素均排序完毕。算法分析: 选择排序的交换操作介于0和n-1次之间;选择排序的比较操作为n(n-1)/2次之间;选择排序的赋值操作介于0和3(n-1)次之间;其最差、平均时间复杂度都为O(n^2)。 空间复
2015-08-24 13:26:58
451
原创 排序算法(二)冒泡排序
Java实现冒泡排序算法:public class BubbleSort { public static void bubbleSort(int[] source) { int i, j; boolean exchange; for (i = 0; i < source.length; i++) { exchange =
2015-08-21 18:19:24
430
原创 排序算法(一)快速排序
快速排序算法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;
2015-08-19 18:04:39
523
原创 Android关于Bitmap的几个方法
1.保存Bitmap到SD卡 private String ALBUM_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + "/"; private void saveFile(Bitmap bm) throws IOException { File dirFile = new File(ALBUM_
2015-01-30 22:01:34
450
原创 编程挑战(二)分配糖果
import java.util.Scanner;/* * 思路:分治法。每一趟使相邻两个或三个小朋友满足rating值大于相邻rating值时糖果值大于相邻糖果值,直到最后一趟比较所有小朋友的糖果值都没有被修改(递归)。 */public class KidsCandy { private static int n; private static int[] r; privat
2014-09-26 21:53:37
810
原创 android:shape 属性
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring"] > <corners android:radius="integer" android:topLeft
2014-09-09 16:36:10
393
原创 android.view.InflateException: Binary XML file line #1: Error inflating class
第二次遇到这个问题,虽然不知道是为什么,
2014-09-05 16:09:29
1007
原创 TextView setCompoundDrawables()
setCompoundDrawables(Drawable left, Drawable top, Drawable right, Drawable bottom) /** * Sets the Drawables (if any) to appear to the left of, above,
2014-08-29 11:33:28
1412
原创 This tag and its children can be replaced by one <TextView/> and a compound drawable
写了一个这样的布局:
2014-08-29 09:54:55
790
原创 Android多线程学习(一):使用Thread异步下载图像
这是一个使用 Android Thread 从网络上异步下载图片并在 ImageView 中显示的的简单示例。因为需要访问网络,所以要在 manifest.xml 中添加网络访问权限:
2014-08-27 17:26:24
579
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人