面试中常用到机试题
来源:互联网 发布:阿里云浏览器官网 编辑:程序博客网 时间:2024/06/05 21:59
题目一:
连续重复的字符串进行字符串的压缩操作
如wwweerqqqq输出则为3w2e1r4q
public class Text3 {private static String str;public static void readIn(){Scanner in = new Scanner(System.in); str = in.next(); System.out.print(compressStr(str)); } //对连续重复的字符串进行字符串的压缩操作public static StringBuffer compressStr(String str){StringBuffer sb = new StringBuffer();int count;for(int i=0;i<str.length();i=i+count){char temp = str.charAt(i);count = 1;for(int j=i+1;j<str.length();j++){if(str.charAt(j)==temp){count++;}else{break;}}if(count!=1){sb.append(count);}sb.append(temp);}return sb;}public static void main(String[] args) {/*System.out.print(Text3.compressStr("xxxyyyyzzxx"));System.out.print(Text3.compressStr("xyzewrs"));*/Text3.readIn();}}
题目2
比如43数字可以生成43+4+3=50
我们就说d(43)=50,50是由43生成的,求出100范围内不能被按照这种模式生成的数字有哪些,这个结果可以验证一下
package TEXT;import Test.Test10;public class Text1 { //有没有一种是求解差集的思想在里面//定义一个函数,判断这个数是否满足a的定义,暂定为在100的范围以内public static boolean judge(int m){int a = m/10;int b = m%10;/*System.out.print(a);System.out.print(b);*/if(!IsSame(m)){for(int j=(a-1)*10;j<=a*10;j++){int sum = j+j/10+j%10;if(sum==m){return true;}}}else if(IsSame(m)){for(int j=(a-2)*10;j<=(a+1)*10;j++){int sum = j+j/10+j%10;if(sum==m){return true;}}}return false;}public static boolean IsSame(int m){int a = m/10%2;int b = m%10%2;return a==b?true:false;}public static void print(){for(int i=1;i<100;i++){if(!judge(i)){System.out.print(i);System.out.println();}}}public static void main(String[] args) {// TODO Auto-generated method stub /*System.out.print(Text1.judge(55));*/Text1.print();}}题目3:约瑟夫环问题
已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列
package TEXT;public class Text2 {//约瑟夫环 public static void Josephus(int N, int M) { int f[] = new int[100]; f[1] = 0; //说明默认是从第一数字开始进行的 for(int i = 2; i <= N; i++) { f[i] = (f[i - 1] + M) % i; } System.out.print((f[N]+1)+" "); } public static void main(String[] args) {// TODO Auto-generated method stub Text2.Josephus(10, 8);}}
0 0
- 面试中常用到机试题
- java面试中常用到的位运算符解析
- 面试或笔试中常用到的linux基本命令
- VB listBox中常用到
- C++中常用到宏
- 面试中常出现的两个Hibernate面试题及解答
- C#中常用到的JS
- C#中常用到的JS
- 工作中常用到的语句
- C#中常用到的JS
- 开发中常用到的片段
- C 中常用到的宏
- java中常用到的语句
- C 中常用到的宏
- 科研中常用到的工具
- HDFS中常用到的命令
- 摄影中常用到的术语
- iOS中常用到的全局变量
- 1622-5 孔富晨 总结《2016年10月22日》 【连续第22天总结】
- java web(8)
- 除了在DDMS中可以查看进程,我们还可以通过shell命令来查看
- Android 6.0 解决recyclerview 在 scrollview 中不能全部显示,高度不正常的问题。
- LightOJ 1135 Count the Multiples of 3 (Segmengt + 懒惰标记)
- 面试中常用到机试题
- java web(9)
- Spring-Ioc
- 分别为SecondActivity和ThirdActivity指定了process属性
- IPC进程间通信/跨进程通信
- java编程思想读书笔记 第十五章 泛型 (匿名内部类和擦除)
- java web(10)
- CSS3_Node3_transform&transition&animation
- GET提交乱码