自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 二叉树的遍历(2)--先序遍历,中序遍历,后序遍历(非递归)

先序遍历 public static void preOrderUnRecur(Node head) { System.out.print("pre-order: "); if (head != null) { Stack<Node> stack = new Stack<Node>(); stack.add(he

2016-08-30 19:34:46 235

原创 二叉树的遍历(1)--先序遍历,中序遍历,后序遍历

对于二叉树 代码结构: public static class Node { public int value; public Node left; public Node right; public Node(int data) { this.value = data; } }一个

2016-08-30 18:33:46 319

原创 java集合框架Stack栈

Stack栈是一个简单的类,操作实现均在父类Vector中完成!!!publicclass Stack<E> extends Vector<E> { /** * 先进后出 * Vector的存储结构是数组,Stack继承自Vector,使用它的存储结构 * 均是线程安全的 * Creates an empty Stack. */ p

2016-08-25 10:38:25 236

原创 解析Spring源码(10)---AbstractBeanFactory

public class XmlBeanFactory extends DefaultListableBeanFactorypublic class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFactory implements ConfigurableListableBeanFactory, Bean

2016-08-24 08:32:28 350

原创 解析Spring源码(9)--XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(this);

Spring对于xml文件的解析,读取相关的属性设置,构建了BeanFactory!! 下面我们对源码作几点总结!!!new ClassPathResource(“bean_test.xml”) 这个较为简单,创建了Resource对象,并封装了当前线程的类加载器,同时可以通过方法获取xml文件流 XmlBeanDefinitionReader reader = new XmlBe

2016-08-21 19:25:30 656

原创 解析Spring源码(8)--BeanDefinitionParserDelegate

/** * Parses the supplied {@code <bean>} element. May return {@code null} * if there were errors during parse. Errors are reported to the * {@link org.springframework.beans.factory.parsi

2016-08-21 16:36:59 225

原创 解析Spring源码(7)--DefaultBeanDefinitionDocumentReader

//获取Document对象用于解析xml文档,包含xml文档的一些相关信息 Document doc = doLoadDocument(inputSource, resource); //注册bean,创建是当获取的时候创建getBean("...");会将xml文件中的bean节点注册保存 return registerBe

2016-08-21 16:32:32 516

原创 数组合并System.arraycopy

public static native void arraycopy(Object src,int srcPos,Object dest,int destPos,int length); src - 源数组。 srcPos - 源数组中的起始位置。 dest - 目标数组。 destPos - 目标数组中的起始位置。 length - 要复制的数组元素的数量。 输入一个整数数组,实

2016-08-21 09:24:50 488

原创 解析Spring源码(6)--Document

承接上一节 对于如何解析xml文件,大家参考网上一些文章!!! 先看看如何解析的 /** * 解析xml文件流 * Load the {@link Document} at the supplied {@link InputSource} using the standard JAXP-configured * XML parser. */

2016-08-20 14:00:52 330

原创 Queue队列实现---有界队列BQueue

/* * @(#)BQueue.java */ package ds.util; import java.util.NoSuchElementException; /** * This class implements a finite queue using a circular queue model * to store and retrieve elements.

2016-08-19 22:37:15 782

原创 解析Spring源码(5)--this.documentLoader.loadDocument

承接上一篇。。。 /** * private DocumentLoader documentLoader = new DefaultDocumentLoader(); * 对象解析文件流 * * Actually load the specified document using the configured DocumentLoader.

2016-08-18 22:32:08 1279

原创 对数组的验证

**public static boolean Find(int [][] array,int target) { if(array==null||array[0].length==0||array.length==0){ return false; }** public static boolean Find(int [][] array,

2016-08-18 20:27:55 584

原创 解析Spring源码(4)--XmlBeanDefinitionReader

上两节对XmlBeanFactory和XmlBeanDefinitionReader对象reader进行了一些介绍,下面我们继续回到XmlBeanFactory中解析源码! public XmlBeanFactory(Resource resource, BeanFactory parentBeanFactory) throws BeansException { super(p

2016-08-18 16:59:13 383 1

原创 换钱的最少货币数

【题目】 给定数组arr,arr中所有的值都为正数且不重复。 每个值代表一种面值的货币,每种面值的货币可以使用任意张, 再给定一个整数aim代表要找的钱数,求组成aim的最少货币数。【举例】 arr=[5,2,3],aim=20。 4张5元可以组成20元,其他的找钱方案都要使用更多张的货币,所以返回4。 arr=[5,2,3],aim=0。不用任何货币就可以组成0元,返回0。 a

2016-08-18 15:59:29 638

原创 矩阵的最小路径和

准备校招的!这些是一本书的笔记-—程序员代码面试指南:IT名企算法与数据结构题目最优解(左程云)。> **给定一个矩阵m,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,返回所有的路径中最小的路径和**。> 【举例】如果给定的m如下:> 1 3 5 9 > 8 1 3 4 >

2016-08-16 21:55:31 317

原创 斐波那契系列问题

准备校招的! 这些是一本书的笔记吧—程序员代码面试指南:IT名企算法与数据结构题目最优解(左程云)。给定整数N,返回斐波那契数列的第N项。给定整数N,代表台阶数,一次可以跨2个或者1个台阶,返回有多少种走法假设农场中成熟的母牛每年只会生1头小母牛,并且永远不会死。第一年农场有1只成熟的母牛,从第二年开始,母牛开始生小母牛。每只小母牛3年之后成熟又可以生小母牛。给定整数N,求出N年后牛的数量。

2016-08-16 10:42:38 687

原创 java并发编程实战笔记

仅供自己记忆竞态条件:多线程环境下,结果取决于运行时线程中操作的交替执行方式 使用关键字synchronized进行同步 活跃性问题:死锁,饥饿,活锁,导致某些代码无法执行 线程无处不在:垃圾收集,终结操作的后台线程,main方法线程,awt,swing,servlet,rmi

2016-08-15 22:31:41 187

原创 解析Spring源码(3)---XmlBeanDefinitionReader(1)

上节我们对XmlBeanFactory进行了初步了解简化版源码: /** * public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFactory implements ConfigurableListableBeanFactory, BeanDefinitionRegis

2016-08-14 11:10:55 282

原创 解析Spring源码(2)---new XmlBeanFactory(new ClassPathResource("..."))

上节我们已经对ClassPathResource进行了讲解,下面进入最最重要的XmlBeanFactory。 简化的源码:public class XmlBeanFactory extends DefaultListableBeanFactory { /**以下是注释操作 * public class DefaultListableBeanFactory extends Abst

2016-08-14 09:30:51 562

原创 java中的Scanner探索解惑

最近在刷题,准备校招! 对Scanner有一些不解; 有的时候空格代表了下个输入,有的时候无法读取! 当然了,正常输入是没有问题的。。。 @Test public void test() { int n=3; while(n>0){ Scanner input = new Scanner(System.in);

2016-08-14 08:18:36 218

原创 解析Spring源码(1)--ClassPathResource("xxx.xml");

首先看看我们是如何使用Spring的 public static void main(String[] args) { BeanFactory bf=new XmlBeanFactory(new ClassPathResource("bean_test.xml")); HelloWorldService hw=(HelloWorldService) bf.getB

2016-08-13 13:13:55 488

原创 一步一步解析java排序算法---堆排序(最大堆)

与最小堆(递减)类似: 最大堆(递增)的调整操作: //从i节点开始调整, i节点的子节点为 2*i+1, 2*i+2 public static void MaxHeapFixdown(int a[], int i, int n) { int j, temp; temp = a[i]; /

2016-08-13 12:39:25 346

原创 一步一步解析java排序算法--堆排序(最小堆)

首先明确什么是堆? 一个数组: int[] unsort={12,24,35,40,50,66,70,56,55};堆的表现形式(这是一个最小堆,根节点是最小的): 用数组来表示堆,i结点的父结点下标就为(i – 1) / 2。它的左右子结点下标分别为2 * i + 1和2 * i + 2。(这样就是给数组建好堆了)下面进入堆排序的核心步骤:堆节点的移动 这里需要对unsort[3]

2016-08-12 22:48:07 453

原创 一步一步解析java排序算法--希尔排序

public static void inset_order(int[] disorder){ for (int i = 1; i < disorder.length; i++) { if(disorder[i-1]>disorder[i]){ //将待插入元素提取出来,以便与前边元素进行比较。最后用来插入使用

2016-08-07 21:31:50 308

原创 java中的==和equals()比较

结论: 通常情况下,只需关注null的比较 null比较:只能使用==比较, 非null比较:首先验证非null,然后可以使用equals比较典型的比较方式:public static boolean equals(Object a, Object b) { return (a == b) || (a != null && a.equals(b));} publi

2016-08-05 08:33:54 256

原创 一步一步解析java集合框架HashMap源码(3)

通过键获取对应值 public static void main(String[] args) { Map<String,String> map=new HashMap<String,String>(); map.put("firstKey","firstValue"); map.put("secondKey","secondValue");

2016-08-04 18:37:18 339

原创 一步一步解析java集合框架HashMap源码(2)

什么时候HashMap会进行再散列? //第一次添加数据,threshold=12;添加第13个数据时,进行重构散列表 if (++size > threshold) resize(); /** * 初始化返回默认容量16的Node<K,V>[]数组,并赋值table * threshold=DEFAULT_LOAD_F

2016-08-04 18:01:17 323

原创 java中break

结束整个循环

2016-08-04 12:54:40 186

原创 一步一步解析java集合框架HashMap源码(1)

首先看如何简单实用HashMap public static void main(String[] args) { Map<String,String> map=new HashMap<String,String>(); map.put("firstKey","firstValue"); map.put("secondKey","secondVa

2016-08-04 10:55:03 213

原创 java中float

java当中默认的小数是double double f=2.0; 这样声明没问题。 float ff=2.0; 直接报错,除非float ff=(float) 2.0;强制转换 或者 float ff=2.0f; 其中2.0f中的f只是标识float类型,没有其他意义!

2016-08-03 23:11:01 275

原创 java移位运算符<< >>

一个数左移n位,就是等于这个数乘以2的n次方(*2n),一个数右移n位,就是等于这个数除以2的n次方(/2n)测试一: public static void main(String[] args) { int num=20; int left_num=num<<1; int right_num=num>>1; System.ou

2016-08-03 19:24:17 266

原创 一步一步解析java集合框架HashMap源码(1)

首先看HashMap的底层结构实现: static class Node<K,V> implements Map.Entry<K,V> { final int hash;//hash值 final K key;//键值 V value;//键值对应的值 Node<K,V> next;//下个节点 Node(int h

2016-08-03 19:13:22 279

原创 Socket编程基本使用

最近去笔试联系,看到很多名词:网络编程,TCP/IP协议 跟我所学的socket编程有什么联系呢?(果然基础不到家啊!) 网络编程,java提供了一套API,利用这些API可以进行网络间通信,主要就是信息的接收和发送。这就是网络编程了! TCP/IP协议:套接字,java利用TCP/IP协议给信息的接收和发送制定了标准。这些都是底层实现,可是还是会考?! socket编程:就是编程人员的表层

2016-08-01 10:55:35 304

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除