宁波中茂网络科技有限公司_富通天下-笔试

纸质算法题目

1、给你一个字符串,找出其中第一个只出现过一次的字符及其位置

正解:一层for循环,循环按序取出字符串中的单个字符,循环体内部使用String类的indexOf(),从当前字符下标往后搜索,查看该字符是否存在即可,如果返回-1,则代表不存在,break跳出循环即可;

2、计算100以内所有素数的和

正解:素数是指只能被1和本身整除的数;只要用for循环和%运算符即可解答;但是你如果能说出"筛法"这个名词,懂得如何优化此for循环,便能再加分了;

3、求10000以内的完全数。所谓完全数是指所有因子之和为该数的两倍。

正解:双层for循环,也有优化步骤;

4、有台阶X阶,若每次跨2阶最后剩1阶,每次跨3阶最后剩2阶,每次跨5阶最后剩4阶,每次跨6阶最后剩5阶,每次跨7阶刚好走完。求台阶共有多少阶?

正解:用死循环,变量值为7的倍数,循环体内部用%运算符即可解答;

5、给你一个矩阵,请按照顺时针打印该矩阵,如下图的输出顺序是 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16;这是一个二维数组,行列长度不限,要求写出一个通用算法;

正解:定义右、下、左、上四个方向,按这四个方向轮流遍历该二维数组,走过的路标记一下即可解答;

 

笔试结果:AC

猜你喜欢

转载自www.cnblogs.com/syjp/p/10484494.html