2016年4月19日
摘要: 今天在做ACM题的时候,遇到了一个问题,记下来,避免下次再遇到。 问题 问题很简单大概就是输入一段话,然后打印出里面包含了a-z的字母分别有多少个。贴出代码 然后就开始疯狂的报我空指针异常,很奇怪,看了半天看不出来,不知道你能看的出来吗,没办法,只有拿出了我的调试大法,打上断点,跟着进源码,很快就发 阅读全文
posted @ 2016-04-19 15:30 韩思明 阅读(333) 评论(1) 推荐(0) 编辑
摘要: 一、问题描述: 构造程序,分别是: •不能触发Fault •触发Fault,但是不能触发Error •触发Error,但是不能产生Failure 二、Fault、Error、Failure区别 Fault:可能导致系统或功能失效的异常条件,可译为“故障”。 Error:计算、观察或测量值或条件,与真 阅读全文
posted @ 2016-04-19 14:16 韩思明 阅读(736) 评论(0) 推荐(0) 编辑
摘要: 问题 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 思路 方法一:就是让原始数据与1进行与运算,若为1,则表示最低位为1,则count++,原始数据向右移动1位。大概过程{1,0,0,1}&{1} --》 1 , {0,1,0,0}&{1}--》0, {0,0,1,0}&{1}- 阅读全文
posted @ 2016-04-19 14:14 韩思明 阅读(245) 评论(0) 推荐(0) 编辑
2016年4月18日
摘要: 使用interrupt()中断线程 当一个线程运行时,另一个线程可以调用对应的Thread对象的interrupt()方法来中断它,该方法只是在目标线程中设置一个标志,表示它已经被中断,并立即返回。 结果 特别要注意的是标红的地方:如果只是单纯的调用interrupt()方法,线程并没有实际被中断, 阅读全文
posted @ 2016-04-18 21:47 韩思明 阅读(649) 评论(0) 推荐(0) 编辑
摘要: Java中实现多线程的方法有两种: 继承Thread类和实现Runnable方法,并重写Run方法,然后调用start()方法启动线程。使用Runnable会比Thread要好很多,主要是以下三个原因: (1)Java语言是单继承的,如果继承了Thread类,那么便无法继承其他类。 (2)适合多个相 阅读全文
posted @ 2016-04-18 15:59 韩思明 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 问题 一只青蛙一次可以跳上 1 级台阶,也可以跳上2 级。求该青蛙跳上一个n 级的台阶总共有多少种跳法。 思路 当n=1时,只有一种跳法,及f(1)=1,当n=2时,有两种跳法,及f(2)=2,当n=3时,可以从n=1直接跳到n=3,也可以从n=2直接跳到n=3,及f(3)=f(1)+f(2)=3. 阅读全文
posted @ 2016-04-18 14:32 韩思明 阅读(1601) 评论(0) 推荐(0) 编辑
摘要: 问题 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个排好序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3, 4, 5, 1, 2}为{1, 2, 3, 4, 5}的一个旋转,该数组的最小值为1。 思路 这道题最直观的解法并不难。从头到尾遍历数组一次,就能找出最小的 阅读全文
posted @ 2016-04-18 13:02 韩思明 阅读(568) 评论(0) 推荐(0) 编辑
2016年4月17日
摘要: 问题 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路 将入队的元素,加入stack1,如果有出队操作,则将stack1中的元素依次压入stack2,从stack2中弹出元素就等于出队操作,直到从stack2中弹出所有元素,则才又从stack1中加入元素。 阅读全文
posted @ 2016-04-17 15:07 韩思明 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 问题 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树。 思路 首先找到先序遍历的第一个节点,就是根节点,然后在中序遍历 阅读全文
posted @ 2016-04-17 11:14 韩思明 阅读(185) 评论(0) 推荐(0) 编辑
2016年4月13日
摘要: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 输入可能包含多个测试样例,对于每个测试案例, 输入的第一行为两个整数m和n(1<=m,n<=1000):代表将要输入的矩阵的行数和列 阅读全文
posted @ 2016-04-13 17:43 韩思明 阅读(253) 评论(0) 推荐(0) 编辑