去哪儿笔试题(2012年成都站)- 马上要笔试了,做做历年的题。
2013-10-09 23:48
267 查看
摘要:马上要笔试,做做历年的题目把= =1
题目:
* 2. 已知字母序列【d, g, e, c, f, b, o, a】,请实现一个函数针对输入的一组字符串 input[] = {"bed", "dog",
* "dear", "eye"},按照字母顺序排序并打印。
*
* 本例的输出顺序为:dear, dog, eye, bed。
题目:
* 2. 已知字母序列【d, g, e, c, f, b, o, a】,请实现一个函数针对输入的一组字符串 input[] = {"bed", "dog",
* "dear", "eye"},按照字母顺序排序并打印。
*
* 本例的输出顺序为:dear, dog, eye, bed。
/** * 2. 已知字母序列【d, g, e, c, f, b, o, a】,请实现一个函数针对输入的一组字符串 input[] = {"bed", "dog", * "dear", "eye"},按照字母顺序排序并打印。 * * 本例的输出顺序为:dear, dog, eye, bed。 * * @author Administrator * */ public class Q2 { String[] table = { "d", "g", "e", "c", "f", "b", "o", "a" }; public void sort(String[] input) { if (input.length == 1) { System.out.println(input); } for (int i = 1; i < input.length; i++) { // 插入排序 for (int j = i - 1; j > -1; j--) { if (isHigher(input[i], input[j]) == 1 || isHigher(input[i], input[j]) == 0) { continue; } if (isHigher(input[i], input[j]) == -1) { // 交换 String temp = input[i]; input[i] = input[j]; input[j] = temp; } } } for (int i = 0; i < input.length; i++) { System.out.println(input[i]); } } public int isHigher(String s1, String s2) { int length = s1.length() < s2.length() ? s1.length() : s2.length(); for (int i = 0; i < length; i++) { int index1 = getIndex(String.valueOf(s1.charAt(i))); int index2 = getIndex(String.valueOf(s2.charAt(i))); if (index1 > index2) { return 1; } else if (index1 < index2) { return -1; } else { continue; } } return 0; } public int getIndex(String s) { for (int i = 0; i < table.length; i++) { if (table[i].equalsIgnoreCase(s)) { return i; } } return -1; } public static void main(String[] args) { Q2 q = new Q2(); String[] input = { "bed", "dog", "dear", "eye" }; q.sort(input); } }
相关文章推荐
- 2012年小米在川大的校园招聘笔试题
- [历年IT笔试题]2014京东校园招聘软件开发类笔试试题
- 中兴历年笔试题自己收藏用02
- [历年IT面试题]百度2014研发类校园招聘笔试题解答
- [历年IT笔试题]暴风影音笔试题集锦
- 腾讯2012年实习生笔试题
- 阿里巴巴历年笔试面试70题 [1-5]
- [360] 笔试题2012年最后一道大题
- AVL树(考研的同学需要注意其定义)的判定(某公司2012年校园招聘笔试题目)
- 搜狗2012年校园招聘笔试题【转自网络】
- 2012年微软校招实习生笔试题(2012.4.7)
- 海豚浏览器历年笔试题
- 腾讯2012年校园招聘笔试题
- 【腾讯2012年实习生笔试加分题】不使用除法,由给定数组a[N]构造数组b [N],其中b[j]=a[0]*a[1]*…*a[N-1] / a[j]
- 棋盘寻宝扩展(微策略2012年校园招聘笔试题)
- 去哪儿2015笔试题JAVA实现
- 腾讯2012年实习生笔试题
- 华为的2012年上机笔试程序
- [历年IT笔试题]2014阿里巴巴面试题(北京站)
- 中兴历年笔试题自己收藏用03