quna 笔试真题 字符串解压
个人信息:就读于 燕大本科 软件工程专业 目前大四;
本人博客:google搜索“cqs_2012”即可;
个人爱好:酷爱数据结构和算法,希望将来从事算法工作为人民作出自己的贡献;
编程语言:Java ;
编程坏境:Windows 8.1 x64;
编程工具:eclipse;
制图工具:office 2007 powerpoint;
硬件信息:华硕X54HR 笔记本;
恋爱情况:处于被夺初吻的热恋中;
题目:
给出一个字符串如 a1b2c3ab10
将其转换成 abbcccabababababababababab
转换规则大概能猜出来了
思路:
字符串提取,数字提取
代码:(Java)
package wxj_string; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Main m = new Main(); String str = m.strUnzip("a1b2c3ab10"); System.out.println(str); } public String strUnzip(String str){ String result = ""; int i,j; for(i=0;i<str.length();){ /* * 截取包含字母的子字符串 */ for(j=i;;j++){ if(str.charAt(j)>='0' && str.charAt(j) <='9') break; } String data = str.substring(i,j); i = j; /* * 截取包含数字的子字符串 */ for(j=i;;j++){ if(j >= str.length() || str.charAt(j)<'0' || str.charAt(j) >'9') break; } String num = str.substring(i,j); i = j; /* * 解压字符串 */ int n = Integer.parseInt(num); for(;n>0;n--){ result += data; } } return result; } }
时间: 2024-10-12 22:38:28