常见算法题
吴二喵
拒绝拖延,拒绝熬夜,提高效率!
展开
-
大数的阶乘问题
可以用java的Decimal类import java.math.BigDecimal;import java.util.Scanner;public class Factorial { public static void main(String[] args){ Scanner scan = new Scanner(System.in); while(s原创 2016-09-19 22:05:19 · 205 阅读 · 0 评论 -
n!末尾有多少个0
import java.util.Scanner;/**n!=n*(n-1)*(n-2)*....3*2*1,*而如果要出现0,必须得有2和5出现,但是明显n!中5的因子个数少于2的因子个数,*即转化为求 n!中因子5的个数*/public class NumerOfZero { public static void main(String[] args){ Sca原创 2016-09-19 22:27:06 · 349 阅读 · 0 评论 -
求某个正整数范围内的所有素数
import java.util.List;import java.util.Scanner;import java.util.ArrayList;public class Main{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); while(原创 2016-09-19 23:22:45 · 1756 阅读 · 0 评论 -
给定一个数组,其中只有一个数出现一次,别的数都出现3次,找出这个数
题目描述给定一个数组,其中只有一个数x出现一次,别的数都出现3次,找出这个数x。(线性时间复杂度)思路这个用异或不可以。 可以设置一个长度为32的int数组。统计每位上出现1的次数,如果次数能被3整除,说明x该位上为0,否则为1java代码实现import java.util.Scanner;public class AppearOnce3 { public static void mai原创 2016-10-11 22:07:02 · 5537 阅读 · 2 评论 -
两个字符串的最大公共子字符串
/* * 两个字符串的最大子字符串 */public class maxSubString { public static void main(String[] args){ String str1 = "abcdefgh"; String str2 = "dbcdefjjj"; System.out.println(findSubStr原创 2016-09-30 15:25:19 · 638 阅读 · 0 评论 -
假如一个数组存储了一个股票,在一天交易窗口内各时间点的股票价格(正整数),只允许一次买入和一次卖出,请提供一个算法,计算出通过买入和卖出可以得到的最大利润
参考:http://blog.csdn.net/jx_870915876/article/details/52587634题目描述假如一个数组存储了一个股票,在一天交易窗口内各时间点的股票价格(正整数),只允许一次买入和一次卖出,请提供一个算法,计算出通过买入和卖出可以得到的最大利润输入价格序列输出最大可能的利润样例输入 2 3 2 4样例输出 2数据是有顺序的,卖出不能在买入之前Java代码实转载 2016-10-16 21:03:39 · 2469 阅读 · 0 评论 -
单词相似性
题目描述单词的操作包括insert,replace和delete,给定两个字符串s1和s2,求出最少经过多少次这种操作使得s1和s2相同,假设只在s1上进行操作。输入seed sekd样例输出1解题思路参考http://blog.csdn.net/caodong_geek/article/details/11831047?utm_source=tuicool&utm_medium=referra原创 2016-10-16 21:11:46 · 1044 阅读 · 0 评论