自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海象先生

更深的思考,多问为什么。 GitHub:http://github.com/maokai1229

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

原创 两个栈来实现一个队列 《剑指Offer》

题目思路栈:先进后出队列:先进先出使用两个栈,栈1用于push,栈2用于pop,两个栈底相当于是连接的。代码import java.util.Stack;public class Stack2Queue { Stack stack1 = new Stack(); Stack stack2 = new Stack(); //进队

2018-01-27 20:37:50 100

原创 从尾到头打印链表 《剑指Offer》

题目思路刚拿到题目,错误的认为是单链表的反转。这个题目用递归的方式会好做很多。因为递归的底层使用堆栈实现的,它会一层层递归,到达底层时回朔。解法/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val)

2018-01-26 11:30:57 89

原创 替换空格 剑指Offer

题目思路首先从左往右计算空格的数量反向替换空格,因为正向替换,需要大量的移动代码 public String replaceSpace(StringBuffer str) { int spaceNum=0; int newLength=0; int oldIndex; // 统计数量

2018-01-24 21:42:46 166

原创 冒泡排序的多种实现

冒泡是我最早接触的排序算法,两个 for 循环就搞定。前言国际惯例,先上效果图目录基本思想算法实现基本原理通过比较相邻两个元素,如果符合条件就进行替换。算法实现写法有很多种,具有代表性的是《Java数据结构普与算法》书中给出的案例。 //out 一趟排列出最大(最小)值 int out; /

2018-01-24 21:28:54 251

原创 二维数组查找 《 剑指Offer》

题目时间限制:1秒 空间限制:32768K 热度指数:517541本题知识点: 查找题目描述: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路选取右上角或者左下角的元素a[row][column]与target进行比较, 当target

2018-01-14 17:13:43 151

原创 二叉树的递归遍历

前言二叉树和链表在历年春招笔试中,都是重点考核对象。链表由于算法简单,一般考代码实现能力。二叉树考核遍历。二叉树二叉树是树形结构中比较简单的,它又可细分成完美二叉树,斜二叉树(相当于链表),完全二叉树。二叉树的几个性质第 i 层最大结点数为 2^(i-1)深度为 k 的二叉树最大结点数为 2^k -1 (完美二叉树)二叉树的遍历先序中序后序层次

2018-01-10 21:08:10 156

原创 链表的反转(使用循环遍历实现)

前言链表的反转问题在校招中算是一个高频题目,同时考的比较勤的还有:Top K ,快排,堆排,这些在以后的帖子中我们再细说,今天我们先用 Java 实现单链表的反转。推荐看看这个 看图理解单链表的反转,写得简单清晰。单链表的反转链表的反转有两种实现:遍历,递归;遍历易于理解,递归代码简洁,各有千秋。反转的遍历实现在遍历时,要分清头指针 first (有的教程里写成

2018-01-08 21:43:06 1303

原创 单链表的Java实现 (二)

前言前面我们对单链表的表头进行数据的插入和删除,其实也就是实现栈的链式存储。然而仅仅对首个结点进行操作太 easy,我们需要的是对任意位置的查询和删除。目录查询结点删除任意结点查询结点以结点中存储的值为查询的索引 //根据值查询链表 private List queryByKey(int key) { List current = first; while

2018-01-02 20:32:21 1792

原创 单链表的Java实现 (一)

前言最近准备春招,数据结构和算法是短板,决定下功夫恶补。链表能够实现数据的链式存储,可以做大量的数据插入删除,不用指定内存的大小。目录结构 头结点头部插入数据头部删除数据遍历数据结构 class List { //数据 private int data; //储存指向下一节点的指针 private List next;

2018-01-02 16:50:56 991

空空如也

空空如也

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

TA关注的人

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