去哪儿网校园招聘笔试题(成都)--之一
来源:互联网 发布:内存泄漏怎么解决java 编辑:程序博客网 时间:2024/04/29 04:54
描述:
已知字母序列【d, g, e, c, f, b, o, a】,请实现一个函数针对输入的一组字符串 input[] = {"bed", "dog", "dear", "eye"},按照字母顺序排序并打印。
本例的输出顺序为:dear, dog, eye, bed。
思路:
将字母序列所代表的顺序值存入map中,然后再实现排序接口comparator中的compare方法,在compare方法中实现对字符串的排序。
代码:
import java.util.Comparator;import java.util.Arrays;import java.util.HashMap;import java.util.Map;public class StringTest implements Comparator<String>{static char charOrder[] = { 'd', 'g', 'e', 'c', 'f', 'b', 'o', 'a' };Map<Character, Integer>mpp=new HashMap<Character, Integer>();public StringTest(){for(int i=0;i<charOrder.length;i++)mpp.put(charOrder[i],i); }public int compare(String s1,String s2){int len1=s1.length(),len2=s2.length();int min=len1<len2?len1:len2;int num=0;for(int i=0;i<min;i++){num=mpp.get(s1.charAt(i))-mpp.get(s2.charAt(i));if(num!=0)return num;}if(len1!=len2)return len1-len2;return 0;}/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubString[] strArray = new String[] { "bed", "dog", "dear", "eye" };Arrays.sort(strArray, new StringTest());for(int i=0;i<strArray.length;i++)System.out.println(strArray[i]);}}
0 0
- 去哪儿网校园招聘笔试题(成都)--之一
- 2014年去哪儿网校园招聘笔试题
- 2014去哪儿网校园招聘笔试(10.13北京)
- 2015去哪儿网校园招聘笔试题:寻找字符串的差异
- 2014去哪儿网校园招聘(沈阳)
- 2017去哪儿网校招笔试题(一)
- 去哪儿网2014年校园招聘笔试题(成都)
- 去哪儿网校园招聘java开发面试回忆
- 去哪儿网2014校园招聘技术笔试题(成都站,开发岗)——2014.09.23
- [历年IT笔试题]2014去哪网校园招聘(沈阳)
- 去哪儿2017校园招聘笔试题
- 2015年去哪网校园招聘笔试题
- 2014.9.23——去哪儿网校招笔试
- 2014届去哪儿校园招聘笔试题
- 去哪儿网2015校园招聘前端笔试题
- 2015去哪儿网春季招聘笔试题及答案
- 去哪儿笔试题
- 2013人人网校园招聘技术笔试题
- eclipse错误: 找不到或无法加载主类 exp1.Hello之解决
- POJ1006: 中国剩余定理的完美演绎
- [LeetCode 59] Spiral Matrix II
- C# 汉字转拼音(全拼)
- A-star算法概述及其在游戏开发中的应用分析
- 去哪儿网校园招聘笔试题(成都)--之一
- 关于1~9组成3位数比例1:2:3问题
- Android系统如何运行动态编译的程序
- c++使用OpenCV函数库
- 2014级纳新笔试题目
- java servlet简单开发
- 安卓的布局管理
- MX4 Pro 连接mac developer
- 排序算法学习