自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基础算法题-链表相关

1. 输入一个链表,从尾到头打印链表每个节点的值。先递归,再添加节点的值即可。 代码如下:ArrayList<Integer> printListFromTailToHead(ListNode listNode) { ArrayList<Integer> array = new ArrayList<Integer>(); if (listNode != null) {

2017-08-06 17:25:55 266

原创 Java 泛型详解

概念泛型泛型在编程语言中出现的最初的目的是希望类或方法具有最广泛的表达能力。通过解耦类或者方法与所使用的类型之间的约束来实现。 通常一般的类和方法,只能应用于具体的类型,基本类型或者自定义的类,若要编写应用于多种类型的代码,这种限制会对代码的束缚很大。在Java语言处于还未出现泛型的版本时,只能通过 Object 是所有类型的父类和类型强制转换两个特点的配合来实现类型泛化。下面是一个容器代码实现部分

2017-08-06 17:24:05 260

原创 Java 常用容器详解

Java 常用容器详解基本概念线性表线性表是由n(n≥0)个数据元素a[0],a[1],a[2],…,a[n-1]组成的有限序列。存在一个唯一的没有前驱的(头)数据元素;存在一个唯一的没有后继的(尾)数据元素;此外,每一个数据元素均有一个直接前驱和一个直接后继数据元素。非线性非线性结构中,各数据元素之间的前驱后继关系要比线性结构复杂。如图,树等。Listlist 是一个元素有序的集合,每个

2017-07-28 11:57:32 516

原创 Java 1.8 HashMap详解

HashMapHashMap实现了Map接口,继承于AbstractMap。利用散列表来实现Key-Value元素的存取。散列表是用链表数组实现的,每个列表被称为桶(bucket)。利用key的hashcode来确保元素的唯一性。HashMap不保证元素的顺序恒定不变,在扩充的过程中,键值对元素位置会被再分配。 这里主要基于JDK1.8版本的HashMap源码进行分析。Map相关的类图如下所

2017-05-21 21:55:33 841

原创 基础算法题-正则相关

题一Implement regular expression matching with support for ‘.’ and ‘*’. ‘.’ Matches any single character. ‘*’ Matches zero or more of the preceding element. The matching should cover the enti

2017-05-21 21:53:20 181

原创 基础算法题-树相关

1. 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。可用递归方式解决。首先利用前序遍历集合的根节点,将中序遍历和前序遍历的结果各分割成两部分,为左右子树的前序遍历集合和中序遍历集合。 代码如下: TreeNode reConstructBinaryTree(int[] pre, int[] in) { if (in.length == 0 | pre.length == 0

2017-05-21 21:52:36 214

原创 基础算法题-数组相关

1. 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 如果直接排序,后进行选择,则时间复杂度最优为O(nlogn),这里有两种思路。 第一种,利用快速排序的思想,找到第n/2位置的数。然后扫描数组,确保这个数的确超过数组长度的一半。 第二种,设置两个标记,一个记录值,一个记录次数,当后一个与前一个不同时,记录数减一,当记录数减少到0时候,需要更改值的标记。 时间复杂度都为O

2017-05-21 21:50:27 360

原创 四天面试小记

连续四天的面试,简单记录下。 ##### xx一面: 1.简单说了项目。 2.算法题。一个大于内存的文件怎么排序,这种题一看到肯定就是[外部排序](http://blog.wangchangzhi.me/blog/2017/04/17/External-sort/),内部归并处理,当时阻塞在认为每次归并必须把整个归并段全部调入内存中,再进行归并排序。然后就没把思路放在归并排序了,想到了堆

2017-04-20 15:07:42 357

原创 基础排序算法总览--JAVA

基础排序算法如下: 1 插入类排序,如直接插入,折半插入,希尔排序等。 2 交换类排序,如冒泡排序,快速排序等。 3 选择类排序,如选择排序,堆排序等。 4 归并类排序,如归并排序等。 5 分配类排序,如基数排序等。基础排序算法一览 排序方法 平均情况 最好情况 最坏情况 辅助空间 稳定性 直接插入 O(n2)O(n^2) O(n)O(

2017-04-08 01:01:41 477

空空如也

空空如也

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

TA关注的人

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