容易想到的是将n一位一位的和1进行比较,产生如下代码但是这样的话会出下面的问题那么就是原数据不动,将1依次移动进行比较有如下的代码一种更简单的方法是:这样做的思路是总而言之
分类:
其他好文 时间:
2015-08-29 18:42:49
阅读次数:
119
题目
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。
例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。
思路
利用两层for循环依次根据第二个字符串中出现的字符将第一个字符串中的同样的字符替换为 ‘\0’,然后将后面的字符移到前面即可;
/*
题目:输入两个字符串,从第一字符串中删...
分类:
其他好文 时间:
2015-08-29 15:30:33
阅读次数:
145
题目:
移除字符串中重复的字符,
如abcadc移除后变为abcd,
注意:可以额外定义一两个变量,但不允许额外开辟一个数组。
思路
这里要求了空间复杂度为O(1),那我们只能用最简单的遍历方法,先让第一个字符与后面的字符一一比较,遇到重复的就把重复的字符用’\0’替换掉,再让第二个字符与右面的字符一一比较,遇到重复的,就把重复的字符用’\0’代替,如此循环,直到最后一个字符,当...
分类:
其他好文 时间:
2015-08-29 14:06:30
阅读次数:
132
题目
移除字符串中重复的字符,字符串由小写字母构成
如abcadc移除后变为abcd,
要求:时间复杂度尽可能小
与上篇博文(http://blog.csdn.net/u010412719/article/details/48086641)不一样的地方是:虽然都是移除字符串中重读的字符,但是这里的要求是时间复杂度尽可能小,对空间没有要求。思路
思路:要求时间复杂度尽可能小而对空...
分类:
其他好文 时间:
2015-08-29 14:02:41
阅读次数:
203
题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。例如有以下一个整数数组:12345,经过调整后应该为:15342、13542、13524等等。
分类:
编程语言 时间:
2015-08-29 13:57:35
阅读次数:
270
/**
*题目:输入数字n,按顺序打印从1最大的n位十进制数,比如输入3,则打印出1、2、3一直到最大的3位数即999.
*时间:2015年8月29日09:32:48
*文件:MaxOfNDigits_1.java
*作者:cutter_point
*/
package bishi.Offer50.y2015.m08.d29;
import org.junit.*;
public c...
分类:
其他好文 时间:
2015-08-29 11:15:09
阅读次数:
162
题目:统计一个数字在排序数组中出现的次数。思路:采用二分查找,找到该数字在数组中第一次出现的位置,然后再找到组后一个出现的位置。两者做减法运算再加1.Java代码://数字K在排序数组中出现的次数//思路:用二分查找,找到第一个k和最后一个Kpublic class NumberCount { .....
分类:
编程语言 时间:
2015-08-29 11:08:17
阅读次数:
133
树的子结构 题目描述
输入两颗二叉树A,B,判断B是不是A的子结构。
解题思路:
先判断A的根结点是否与B的树根相同,若相同,则遍历B的同时遍历A,判断是否相似。
否则判断A的左子树是否与B的树根相同,若相同,则遍历B的同时遍历A的左子树,判断是否相似。
同理A的右子树也一样的方法判断。 注意一个问题,如果两个都为null,或者root2为null,则root2不属于ro...
分类:
其他好文 时间:
2015-08-29 00:53:12
阅读次数:
122
用两个栈实现队列 题目描述:
??用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解题思路:
??利用一个栈来作为暂时存储的栈,类似于汉诺塔问题,可以根据下图思考一下,
我的Java源代码: import java.util.Stack;
public class Solution {
Stack stack1 = new...
分类:
其他好文 时间:
2015-08-29 00:52:17
阅读次数:
135
数值的整数次方 题目描述:
??给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
解题思路:
??注意判断输入的int类型的整数exponent是正数还是负数,0;
如果是正数,使用循环来让base自身乘exponent次,直接返回;
如果是负数,按照正数的方法得到结果result,然后返回1.0/result,、;
如果是...
分类:
其他好文 时间:
2015-08-29 00:51:52
阅读次数:
168