黑马程序员技术交流社区

标题: Java面试题_数组单词分类 [打印本页]

作者: jing迪    时间: 2014-1-4 23:20
标题: Java面试题_数组单词分类
前几天看到面试题:
有一组数组 ["Dog","Act","God","Good","Cat"],如 Dog,God,都有一个D,一个O,一个G,可以算是一类,用你最熟悉的一门语言,用一个函数,把上面数组,把相同一类放入一个新数组中,返回如下列表 最后打印出 [Dog,God]-->[Act,Cat]-->[Good]。
我的思路是:
先用一个数组把,原数组(数组1)中的单词,全部转换成大写或小写(数组2),单词顺序跟原数组保持一致;
然后通过对做数组2进行,单个单词的拆分,然后每个单词,根据阿斯科马ASCII 进行排序,然后组成一个新单词,每个单词经过这样的处理后,形成一个新的数组(数组3),迭代数组3中的元素。进行比较,如果相同就记录它们的下标 ,到数组1中去取相应的元素。

不知道我的思路是否正确,或有更好的方式么?

欢迎拍砖。
作者: 高亮亮    时间: 2014-1-4 23:50
每个单词对应一个Map对象,接收字符(忽略大小写)=出现次数.
比较Map对象.
相同的分同组.不同的单独分一组.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2