- 博客(14)
- 资源 (9)
- 收藏
- 关注
原创 二叉树的建树、遍历(先序、中序、后序、层次)(递归和非递归)--Java实现
什么是树?什么是二叉树? 树:除了根节点之外的所有节点都有且只有一个父节点,根节点没有父节点;除了叶结点以外的所有节点,都有一个或多个子节点,叶结点没有子节点。 二叉树:是树的一种特殊结构,在二叉树中,每个节点最多只能有两个子节点。 二叉树的遍历方式: 1、先序遍历(递归、非递归); 2、中序遍历(递归、非递归); 3、后序遍历(递归、非递归); 4、层
2015-12-24 17:55:11 4281
原创 给定一个节点为头节点,从尾到头反过来打印出每个节点的值
题目:输入一个链表的头节点,从尾到头打印出每个节点的值。已知链表节点组成只有节点值(value)和下一个节点(next)。如下:class Node<E>{ public E value; public Node<E> next; }解法一:新建一个栈,从头(输入的头节点)到尾遍历链表,将每一个节点的值放入栈中,遍历完成后。再执行出栈操作。public voi
2015-12-23 15:49:20 1244
原创 双向循环链表--java实现
双向循环链表示意图: 双向循环链表实现代码:public class DoubleLink<E> { private class Node<E>{ public E value; //节点值 public Node<E> prev; //前一个节点 public Node<E> next; //后一个节点 public No
2015-12-23 14:11:17 4049 1
原创 单向链表--java实现
我们都知道,java中自带了许多的数据结构。这些数据结构被封装的很好,使得我们用的很方便,但是我们却不知道这些数据结构具体是怎么实现的。 于是,自己尝试着实现了一个链表。单向链表示意图: 单向链表实现代码:public class LinkedList<E> { private class Node<E>{ public E value; public No
2015-12-22 17:10:57 1835
原创 java jdk1.7常量池移到哪去了?
今天模拟了一下常量池的oom,突然发现设置的参数-XX:PermSize=10M -XX:MaxPermSize=10M不管用了,同时发现内存一直在上升,当上升到一个极值就会趋于平稳,然后再过一段时间会报: Exception in thread “main” java.lang.OutOfMemoryError: GC overhead limit exceeded 这个异常是当GC的时间超过
2015-12-22 09:38:45 15349 6
转载 四道Java基础题 你能对几道?
一、==符的使用首先看一段比较有意思的代码[java] view plaincopyInteger a = 1000,b=1000; Integer c = 100,d=100; public void mRun(final String name){ new Runnable() {
2015-12-21 13:53:08 885 2
原创 斐波那契数--递归和非递归实现
斐波那契数列是犹如0、1、1、2、3、5、8、·····、fn这样的数,从前书本上一般介绍的方法都是递归的方法 递归方法实现:public static int FibonacciDigui(int n){ if (n == 0) { return 0; } if (n == 1) { return 1
2015-12-21 10:04:31 6236 1
原创 排列(长度为n的字符串所有组成情况)--java实现
递归方法代码实现:/** * 全排列 * @param input * @return */ public static List<String> FullPermutation(String input){ List<String> list = new ArrayList<String>(); StringBuffe
2015-12-18 18:11:08 1742 1
原创 组合(从长度为n的字符串中取m个字符)---java两种实现方法
对于这类组合问题,虽然感觉很简单,但是用java代码实现起来却不是那么容易的。 这其中最容易用到的应该是递归的思想了,这种方法也比较容易理解: 方法一: 递归实现代码:/** * 可能种类在4000万的时候时间效率为7.6s左右 * @param headIndex:当前所要添加字符在原始字符串中的index * @param length:当前字符串长度
2015-12-18 17:41:22 4408
原创 华为2015机考题最后一题解法
第三题:等式变换 输入一个正整数X,在下面的等式左边的数字之间添加+号或者-号,使得等式成立。 1 2 3 4 5 6 7 8 9 = X 比如: 12-34+5-67+89 = 5 1+23+4-5+6-7-8-9 = 5 请编写程序,统计满足输入整数的所有整数个数。 输入: 正整数,等式右边的数字 输出: 使该等式成立的个数 样例输入:5 样例输出:2
2015-12-17 12:00:18 727
原创 Java String.Split(String regex)方法之设置多个分隔符
我们知道String变量有一个spilt方法,这个方法用于分割String字符串,返回值为一个String型的数组。 例如:String str = "hello,boy,what's your name?";此时我们需要以逗号(,)为分隔符,将这句话切割开,则使用:String[] array = str.split(",");但是,有的时候遇到这种情况呢:String str = "1+2-3
2015-12-16 15:01:31 29806 1
原创 Python实现冒泡排序
昨天(2015-12-14)下午闲来无聊,于是随便浏览了一些技术贴,看到许多人谈论Python,发现这门语言挺强大的,特别是在网络爬虫这块,貌似能通过比较简单的语句来实现强大的功能,所以也想了解一下这门语言,于是花了点时间安装了Python编程环境,同时学了点python的基础。 现在用Python写了个冒泡排序,作为自己的学习成果。# coding=gbk'''Created on 2015
2015-12-15 15:07:25 1622
原创 java.util.ConcurrentModificationException问题解决
今天在删除Map中的key值得时候,使用了Iterator,在迭代的时候删除某个key值,发现报了一个异常: Exception in thread “main” java.util.ConcurrentModificationException at java.util.HashMapHashIterator.nextEntry(HashMap.java:922)atjava.util
2015-12-11 11:15:32 2193
原创 整合storm-hdfs过程中源码学习
前一段整合了stomr-hdfs,但是发现在原有的storm-hdfs-0.9.4.jar中的写入数据的逻辑不满足我们的需求,于是乎需要看源码,然后在源码的基础上改写源码,满足自己的需求。整合storm-hdfs的过程,其实也就是编写storm的拓扑结构,然后调用storm-hdfs-0.9.4.jar中的hdfsBolt,通过配置hdfsBolt的一些与hdfs有关的参数,将数据写入到hdf
2015-12-08 12:56:13 3122
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人