博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
华为上机试题(java)
阅读量:4313 次
发布时间:2019-06-06

本文共 2073 字,大约阅读时间需要 6 分钟。

一、题目描述:

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。
比如字符串“abacacde”过滤结果为“abcde”。

public String stringFilter(String str) {    	Map
map = new LinkedHashMap
(); String s = ""; for(int i=0; i
entry : map.entrySet()) { _str += entry.getKey(); } return _str; }

    -- 这里要注意,HashMap中元素的遍历顺序,并非按输入顺序,而是按“有利于随机查找的散列(hash)的顺序”。

    -- LinkedHashMap 是按加入时的顺序遍历,类似的还有LinkedHashSet。

 

二、题目描述:

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。
压缩规则:
1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。
2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。

public String stringZip(String str) {         String _str = "";            	int i = 0;   //游标位置    	char c;      //游标字符    	while(i
1){ _str += String.valueOf(n) + c; } i += n; //游标位置 } return _str; }

  

 

三、题目描述: 

通过键盘输入100以内正整数的加、减、乘、除运算式,请编写一个程序输出运算结果字符串。
输入字符串的格式为:“操作数1 运算符 操作数2”,“操作数”与“运算符”之间以一个空格隔开。

补充说明:

1、操作数为正整数,不需要考虑计算结果溢出的情况。
2、若输入算式格式错误,输出结果为“0”。

public int arithmetic(String str) {    	String[] strArr = str.split(" ");    	    	if(strArr.length!=3 || !isNumeric(strArr[0]) || !isNumeric(strArr[2])) {    		return 0;    	}    	    	String operator = strArr[1];  //运算符    	int leftInt = Integer.valueOf(strArr[0]);   //左操作数    	int rightInt = Integer.valueOf(strArr[2]);  //右操作数    	    	int i = 0;    	if("+".equals(operator)) {    		i = leftInt + rightInt;    	} else if("-".equals(operator)) {    		i = leftInt - rightInt;    	} else if("*".equals(operator)) {    		i = leftInt * rightInt;    	} else if("/".equals(operator)) {    		i = leftInt / rightInt;    	}     	    	return i;     }            //判断字符串是否可转化为数字    public static boolean isNumeric(String str){        for (int i=0; i

  

 

四、题目描述: 

求一个字符串中有没有相同的部分,例如abcsabcvx这个字符串中相同的部分是abc,相同的部分至少应该为2位数,如果有相同部分返回true,如果没有返回false。

public boolean hasSameSubString(String str) {    	int i = 0;    	int length = str.length();      	while(i

  

 

转载于:https://www.cnblogs.com/hamfy/p/3913386.html

你可能感兴趣的文章
git常用命令
查看>>
探讨和比较Java和_NET的序列化_Serialization_框架
查看>>
1、jQuery概述
查看>>
数组比较大小的几种方法及math是方法
查看>>
FTP站点建立 普通电脑版&&服务器版
查看>>
js 给一段代码,给出运行后的最终结果的一些综合情况、
查看>>
webservice 详解
查看>>
js自动补全实例
查看>>
VS无法启动调试:“生成下面的模块时,启用了优化或没有调试信息“
查看>>
npm 安装 sass=-=-=
查看>>
WINFORM中加入WPF控件并绑定数据源实现跨线程自动更新
查看>>
C#类对象的事件定义
查看>>
各类程序员学习路线图
查看>>
HDU 5510 Bazinga KMP
查看>>
关于select @@IDENTITY的初识
查看>>
ASP.NET MVC ajax提交 防止CSRF攻击
查看>>
关于CSS伪类选择器
查看>>
适用于带文字 和图片的垂直居中方法
查看>>
Part 2 - Fundamentals(4-10)
查看>>
使用Postmark测试后端存储性能
查看>>