剑指offer
文章平均质量分 66
普通网友
这个作者很懒,什么都没留下…
展开
-
单例模式
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 1、懒汉模式(线程不安全) public class Singleton{ private static Singleton instance; private Singleton(){} public static Singleton getInstance(){ if(instance==nu原创 2018-01-09 15:27:12 · 116 阅读 · 0 评论 -
数组中重复的数字
题目:找出数组中重复的数字 在一个长度为n的数组中所有数字都在0~n-1的范围内,数组中有些数字是重复的,请找出数组中任意一个重复的数字。 我们注意到数组中的数字都在0~n-1的范围内,如果该数组中没有重复的数字,那么当排序之后数字i将出现在下标i的位置。 从头到尾一次扫描数组中的每个数字,当扫描到下标i是,首先比较这个数字(用m表示)是不是等于i,如果是,则接着扫描笑一个数字,如果不是则将原创 2018-02-03 14:02:05 · 107 阅读 · 0 评论 -
二维数组中的查找
题目:在一个二维数组中,每一行按照从左到右递增的顺序排列,每一列按照从上到下递增的顺序排列,请完成输入一个二维数组和一个整数,判断数组中是否有该整数。 解法:首先选取数组右上角的数字,如果该数字等于要查找的数字,则查找结束。如果该数字大于要查找的数字,则剔除这个数字所在列,如果该数字小于所查找数字,则剔除该数字所在行。逐步缩小查找范围,直到找到要查找的数字或者查找范围为空。 public s原创 2018-02-05 13:59:35 · 133 阅读 · 0 评论 -
逆序打印链表
题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。非递归方式:利用栈public static void printListReverse(ListNode headNode){ Stack<ListNode> stack=new Stack<ListNode>(); while(headNode!=null){ stack.push(headNod...原创 2018-03-12 10:54:27 · 128 阅读 · 0 评论