java笔试题5
来源:互联网 发布:java threadlocal 使用 编辑:程序博客网 时间:2024/05/14 06:33
题目:输出字典中具有相同字符的单词组合,如stop和post在同一个组合里。
自己写的代码:
package com.li.test.classes;/* * 输出字典中具有相同字符的单词组合,如stop,post; */import java.util.HashMap;import java.util.Stack;public class Stringcompare {public HashMap<String, Stack> stringCompare(String[] strarray) {long start = System.nanoTime();HashMap<String, Stack> stringMap = new HashMap();for (int i = 0; i < strarray.length; i++) {Stack stack = new Stack();String str1 = strarray[i];if (strarray[i] == "") {continue;}stack.push(str1);stringMap.put(str1, stack);for (int j = i + 1; j < strarray.length; j++) {String str2 = strarray[j];if (!(str1.length() == str2.length())) {continue;}else {char[] chararray1 = str1.toCharArray();char[] chararray2 = str2.toCharArray();if (compare(chararray1, chararray2)) {strarray[j] = "";stack.push(str2);}}}}System.out.println(System.nanoTime() - start);return stringMap;}public boolean compare(char[] char1, char[] char2) {if (!(char1.length == char2.length)) {return false;}else {int length = char1.length;for (int x = 0; x < length; x++) {for (int y = 0; y < length; y++) {if (char1[x] == char2[y]) {char1[x] = char2[y] = 0;break;}else {continue;}}if (char1[x] != 0) {return false;}}}return true;}/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubString[] dictionary = { "aabb", "bbaa", "acbd", "abcd", "efrt", "frec", "zddffgg", "werr", "sdawq", "cccvv", "rrew", "sdasda", "acdef", "abcdef","axgh", "agxf" };Stringcompare compare = new Stringcompare();System.out.println(compare.stringCompare(dictionary));}}运行结果:
241388
{zddffgg=[zddffgg], cccvv=[cccvv], acbd=[acbd, abcd], agxf=[agxf], sdawq=[sdawq], acdef=[acdef], frec=[frec], aabb=[aabb, bbaa], axgh=[axgh], abcdef=[abcdef], efrt=[efrt], werr=[werr, rrew], sdasda=[sdasda]}
0 0
- java笔试题5
- java笔试题【5】
- 华为Java笔试题笔试
- java笔试题
- java笔试题
- Java笔试题
- java经典笔试题
- 一JAVA笔试题
- Java笔试题集锦
- JAVA笔试题
- java笔试题大全
- 一道java笔试题
- JAVA笔试题
- Java笔试题
- Java笔试题总结
- JAVA笔试改错题
- 华为JAVA笔试题
- java笔试题
- Objective-C之消息机制
- linux下编译vlc移植到android平台
- 定义全局变量de方式
- 10.菜鸟启程,向大牛进发
- EBS 打印机——IX Library 介绍
- java笔试题5
- user和schema的区别
- Android之SurfaceView学习
- 交叉编译VLC
- 杭电 1030 Delta-wave
- PTVS 2.1 Beta版发布 Visual Studio的Python工具
- 初识spring boot maven管理--使用spring-boot-starter-parent
- mysql级联删除更新
- 代码大小端问题