码迷,mamicode.com
首页 >  
搜索关键字:java算法    ( 446个结果
2015华为机试—— 计算二进制数的0的个数
描述: 输入一个10进制数字,请计算该数字对应二进制中0的个数,注意左数第一个1之前的所有0都不需要计算。不需要考虑负数的情况。 解题思路: 对于给定的数n,使用位运算:n=n&(n-1)可计算出对应二进制中1的个数,为count1。将input=n,input=input>>1逐个获取input中1的个数,为count2,如果input&1==1,则此时对应位上为0,记数t加1操作,当count1=count2时,循环终止,此时可获得t,即为0个个数,具体实现看下面代码。...
分类:其他好文   时间:2015-07-17 12:09:09    阅读次数:141
《算法的乐趣》前言中面试算法。
刚刚看了王晓华前辈在《算法的乐趣》一书的前言中提到了一个面试题: 有一个由若干正整数组成的数列,数列中中的每个数都不超过32,已知数列中存在重复的数字,请给出一个算法找出这个数列中所有重复的数字。 我用java实现了一种方法: package com.wr.FindSameNum; public class FindSameNum { public static void main(...
分类:编程语言   时间:2015-07-14 15:41:53    阅读次数:321
2015华为机试——整数分割
解题思路: 对于奇数 n = 2k+1, 它的拆分的第一项一定是1, 考虑去掉这个1,其实就一一对应于2k的拆分,因此f(2k+1) = f(2k)。 对于偶数n = 2k: 考虑有1和没有1的拆分。有1的拆分,与(2k-1)的拆分一一对应,与上面奇数的情况理由相同:没有1的拆分,将每项除以2,正好一一对应于k的所有拆分,因此f(2k) = f(2k-1) + f(k)。 最终结果只要求除以十亿的余数,在int的表示范围内,因此也不需要大数运算。注意余数的性质:(a+b)%m = (a%m+b%m)%m...
分类:其他好文   时间:2015-07-14 11:38:06    阅读次数:994
2015华为机试——尼科彻斯定理
题目描述: 验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。m属于[1,100],超出范围则报错。 例如: 1^3=1 2^3=3+5 3^3=7+9+11 4^3=13+15+17+19 解题思路:不难发现展开式从(n*n - n + 1)开始,步进2显示,共显示n个数。...
分类:其他好文   时间:2015-07-14 11:35:57    阅读次数:93
2015华为机试—— 字符变换
题目描述: 输入一个字符串,将其中大写字母转换为对应小写字母之后的第五个字母,若原始大写字母为V~Z, 则转换为对应小写字母的值减21。其他字符不变,输出转换后的字符串。 例如,对于字母A,则转换为小写字母f;若形参是字母W,则转换为小写字母b。 输入:字符串 输出:转换后的字符串 样例输入:Axs3mWss 样例输出:fxs3mbss...
分类:其他好文   时间:2015-07-14 11:34:26    阅读次数:105
2015华为机试—— Redraiment的遭遇
Redraiment的老家住在工业区,日耗电量非常大。是政府的眼中钉肉中刺,但又没办法,这里头住的可都是纳税大户呀。 今年7月,又传来了不幸的消息,政府要在7、8月对该区进行拉闸限电。但迫于压力,限电制度规则不会太抠门,政府决定从7月1日停电,然后隔一天到7月3日再停电,再隔两天到7月6日停电,一次下去,每次都比上一次晚一天。 Redraiment可是软件专业的学生,怎么离得开计算机。如果停电,就“英雄无用武之地”了。呵呵。 所以他开始盘算起自己回家的日子了,他想知道自己到家后到底要经历多少天倒霉的停电。你...
分类:其他好文   时间:2015-07-13 12:25:57    阅读次数:2006
2015华为机试——报数
题目描述: 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出,问最后留下的那位是原来第几号。 解题思路: 用list存储姓名,看谁剩到最后一个.在list长度遍历一次,如果是3的倍数则退出,同时记录队尾报数,然后再以现在的list报数,以此类推。...
分类:其他好文   时间:2015-07-13 12:25:40    阅读次数:399
2015华为机试——计算整数的位数
题目描述: 输入一个五位以内(包括5位)的正整数,(1)判断它是一个几位数;(2)逆序输出其各位数字。 输入:多组数据,每组一行 输出:对应一行输出 样例输入:56439 样例输出:5 93465 解题思路:使用StringBuffer的reverse方法即可。...
分类:其他好文   时间:2015-07-13 12:24:51    阅读次数:127
java算法学习
最大公约数 欧几里得算法 描述:计算两个非负整数p和q的最大公约数:若q是0,则最大公约数为p。否则,将p除以q得到余数r,p和q的最大公约数即为q和r的最大公约数。 根据算法的自然描述,我们可以很轻松地得到以下的递归实现:1 public static int euclid(int p,...
分类:编程语言   时间:2015-07-13 11:38:24    阅读次数:107
java 排序
排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。内排序有可以分为以下几类:(1)、选择排序:直接选择排序、堆排序。(2)、交换排序:冒泡排序、快速排序..
分类:编程语言   时间:2015-07-11 18:52:21    阅读次数:238
446条   上一页 1 ... 22 23 24 25 26 ... 45 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!