排序:
默认
按更新时间
按访问量

和为S的连续正数序列

题目描述:现在要求有多少种连续的正数序列的和为100(至少包括两个数)。其中一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? 思路:由于题目要求至少包含两个数,那么所有可能的序列的最大值均不会超过(sum + 1) >...

2017-10-24 16:36:00

阅读数:50

评论数:0

判断一颗树是否为平衡二叉树

题意描述:给定一个棵树的根节点,判断该树是否为平衡二叉树?什么是平衡二叉树?平衡二叉树(AVL, Self-balancing binary search tree)是一棵所有节点的左右子树深度差不超过1的二叉搜索树。 这表明AVL首先是一个二叉搜索树,在节点的数值上有约束,同时对树形有严格要求,...

2017-10-23 13:00:49

阅读数:82

评论数:0

求数字在非降序数组中出现的次数

题目描述:在一个非降序排列的数组中,找出数字target出现的次数。 非降序数组,比如{1,1,1,2,3,4,5,5,6}思路一:先通过二分查找,找到arr[index]等于target的index,在分别向前后遍历,直到arr[index] != target为止。 算法实现简单,但是当数组形...

2017-10-18 23:06:20

阅读数:71

评论数:0

第一次只出现一次的字符

题目描述一个字符串全部由字母组成,如果存在只出现一次的字符,则返回第一个字符的位置,如果不存在怎返回-1.思路:因为要寻找第一个只出现一次的字符,所以必须全部遍历,用某个数据结构保存每个位置字符的信息。第二次遍历要在该数据结构中查找值,并且是常熟时间,那么可以采用HashSet。 1. 先用一个H...

2017-10-17 11:04:34

阅读数:60

评论数:0

丑数

这是剑指offer上的一道算法题:把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。思路:比较容易想到的是,对于数组arr,某些位置t2,t3,t5的数分别乘以2,3,5...

2017-10-16 22:22:06

阅读数:40

评论数:0

求一个环内连续m个数的最大和

题目描述:有n个小朋友,围成一个圈,玩丢手绢的游戏。现输入一个数组表示每个小朋友被丢中的次数,同时输入一个整数m(1<=m<=n),求出连续m个小朋友被丢中次数的和的最大值。 示例:input: 5//数组大小n 1 2 3 4 5//数组的个元素值 3//连续m个小朋友 outpu...

2017-10-15 15:51:35

阅读数:103

评论数:0

求出不超过n的幸运数

题目描述:对于某一个数m,如果它只包含数字4或者7(如44,47,77),我们称之为幸运数。现在输入一个自然数x,求出不超过x的幸运数的个数。 注意:结果可能非常大,请将答案除10^9+7取余数。思路一:1. 引入队列queue,开始时将4,7入队。 2. while(queue.peek() ...

2017-10-15 12:40:29

阅读数:103

评论数:0

合并两棵二叉树

给定两棵任意的二叉树,将其合并,返回合并后的根节点。思路: 基于先序遍历,如果root1存在就和root2的val相加,如果root1不存在,就把root2的引用直接赋值给root1。代码如下:public class Main { public static void main(St...

2017-10-12 18:10:11

阅读数:288

评论数:0

一个字符串包含的所有回文串

题目描述:输入一个字符串str,输出str包含的所有回文串的个数。如ABA,包含的回文串有A,B,A,AA,ABA共5个。思路: 长度为N的str的不打乱原始顺序所有可能的字符子串个数为2^N个,再判定每一个子串是否是回文串。

2017-10-11 15:44:13

阅读数:483

评论数:0

可以回跳的台阶跳

题目一: 青蛙跳台阶有两种方式:一次跳1级,一次跳两级,问从0级阶梯跳到n级阶梯共有多少种方式?

2017-10-11 12:17:01

阅读数:124

评论数:0

判断某年月日是当年的第几天

题目描述: 输入三个整数year,month,day分别表示当前年月日,输出该天是当年的第几天思路: * 由于只有十二个月,所以可以枚举每个月的天数 * 需要单独考虑的是当前年份是否是闰年&&当前月份是否大月2月,如果都满足,则在总天数上+1

2017-10-11 10:40:32

阅读数:309

评论数:0

循环数组-找出最小值

今天面试遇到一个有意思的题,记录一下如下。题目一: 一个循环数组,数组中原始值按升序排列(假设所有值不相等),但是现在从某个位置截断,该位置后面的元素移动到数组的最前面,找出这样的数组的最小值。如 arr = { 1,2,3,4,5,6},移动后arr = {4,5,6,1,2,3},其中最小值...

2017-10-10 22:18:11

阅读数:196

评论数:0

把数组排列成最小的数

题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。

2017-10-09 18:29:35

阅读数:121

评论数:0

二叉搜索树转化为双向链表

题目描述: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 思路一: 按中序遍历,借助中间队列用于存储树种的各个节点,然后遍历队列,给相邻节点建立关系; 思路二: 不引入新得变量。只能采用递归的方式: 假设root节点的左...

2017-10-07 17:29:52

阅读数:65

评论数:0

复杂链表的复制

题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的头结点。 思路: 1. 首先根据链表的next遍历一遍,在每个node节点的后面复制一个与node的label相等的节点,如图所示; 2. 再遍历新...

2017-10-06 19:52:45

阅读数:128

评论数:0

二叉搜索树的后序遍历序列

题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出true,否则输出false。假设输入的数组的任意两个数字都互不相同。首先:什么是二叉搜索树(Binary Search Tree)?

2017-10-06 12:58:00

阅读数:89

评论数:0

Java中运行表达式return 1.0/0.0会发生什么?return 1/0会发生什么?

在Java中运行表达式:1.0 / 0.0,会有返回么?会不会抛出异常或者是编译器error? 那1/0呢?

2017-10-05 22:09:10

阅读数:508

评论数:0

Java异常:一个线程运行时发生异常会怎样?

Java中Throwable分为Exception和Error: 出现Error的情况下,程序会停止运行。 Exception分为RuntimeException和非运行时异常。 非运行时异常必须处理,比如thread中sleep()时,必须处理InterruptedException异常,...

2017-10-05 21:43:21

阅读数:1483

评论数:0

Java终止线程的四种方法

线程终止常用的四种方式: **终止线程的第一种方式**:等待run()或者是call()方法执行完毕 **终止线程的第二种方式**:设置共享变量,如boolean flag。 flag作为线程是否继续执行的标志 **终止线程的第三种方式**:利用Thread类提供的interrupt()和Inte...

2017-10-05 19:24:43

阅读数:120

评论数:0

interrupt(),interrupted() 和isInterrupted()使用

Thread类中的三个方法: public void interrupt() // 无返回值 public boolean isInterrupted() // 有返回值 public static boolean interrupted() // 静态,有返回值

2017-10-05 17:34:24

阅读数:136

评论数:0

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