sort
2014-02-28 01:09
169 查看
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.List;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
// Test.sortString("i am eileen lee lee lee am");
Test.sortFrequency("i i i i i am eileen lee lee lee am");
}
public static void sortString(String s){
String[] sArray = s.split(" ");
Arrays.sort(sArray, new Comparator1());
for(String item:sArray)
{
System.out.println(item);
}
}
public static void sortFrequency(String s){
String[] sa = s.split(" ");
Hashtable<String, Integer> ht = new Hashtable<String, Integer>();
List<String> list = new ArrayList<String>();
for(String item:sa)
{
if(ht.containsKey(item))
ht.put(item, ht.get(item)+1);
else{
ht.put(item, 0);
list.add(item);
}
}
Collections.sort(list, new Comparator2(ht));
for(String str : list){
System.out.println(str);
}
}
}
class Comparator2 implements Comparator<String>{
private Hashtable<String, Integer> ownht;
public Comparator2(Hashtable<String, Integer> ht){
this.ownht = ht;
};
@Override
public int compare(String o1, String o2) {
// TODO Auto-generated method stub
if(this.ownht.get(o1) < this.ownht.get(o2)){
return 1;
}else if(this.ownht.get(o1) == this.ownht.get(o2)){
return 0;
}else{
return -1;
}
}
}
class Comparator1 implements Comparator<String>{
@Override
public int compare(String o1, String o2) {
// TODO Auto-generated method stub
if(o1.charAt(o1.length()-1) > o2.charAt(o2.length() - 1))
return 1;
else if(o1.charAt(o1.length()-1) == o2.charAt(o2.length() - 1))
return 0;
else
return -1;
}
}
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.List;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
// Test.sortString("i am eileen lee lee lee am");
Test.sortFrequency("i i i i i am eileen lee lee lee am");
}
public static void sortString(String s){
String[] sArray = s.split(" ");
Arrays.sort(sArray, new Comparator1());
for(String item:sArray)
{
System.out.println(item);
}
}
public static void sortFrequency(String s){
String[] sa = s.split(" ");
Hashtable<String, Integer> ht = new Hashtable<String, Integer>();
List<String> list = new ArrayList<String>();
for(String item:sa)
{
if(ht.containsKey(item))
ht.put(item, ht.get(item)+1);
else{
ht.put(item, 0);
list.add(item);
}
}
Collections.sort(list, new Comparator2(ht));
for(String str : list){
System.out.println(str);
}
}
}
class Comparator2 implements Comparator<String>{
private Hashtable<String, Integer> ownht;
public Comparator2(Hashtable<String, Integer> ht){
this.ownht = ht;
};
@Override
public int compare(String o1, String o2) {
// TODO Auto-generated method stub
if(this.ownht.get(o1) < this.ownht.get(o2)){
return 1;
}else if(this.ownht.get(o1) == this.ownht.get(o2)){
return 0;
}else{
return -1;
}
}
}
class Comparator1 implements Comparator<String>{
@Override
public int compare(String o1, String o2) {
// TODO Auto-generated method stub
if(o1.charAt(o1.length()-1) > o2.charAt(o2.length() - 1))
return 1;
else if(o1.charAt(o1.length()-1) == o2.charAt(o2.length() - 1))
return 0;
else
return -1;
}
}
相关文章推荐
- 【LeetCode with Python】 Insertion Sort List
- Just Sort It(快速排序)
- shell sort
- c语言数组五种排序法:bubble,choise,quick,insert,shell 和js 数组排序sort的区别
- HDU-1685-Booksort(IDA*)
- java arrays sort
- std::sort 排序使用方法
- javascript中Array.sort()方法
- Linux下的sort排序命令详解(二)
- 使用awk + sort做数据统计
- hd1425 sort【堆排序】
- sort +awk+uniq 统计文件中出现次数最多的前10个单词
- 利用 Arrays.sort 字符串 进行排序 完全按字符 排序 忽略字符大小写
- LeetCode 4 Sort List
- c++中的sort
- 数组排序Arrays.sort方法的使用例子
- (leetcode)Sort List
- JavaScript强化教程——sort() 方法
- sort之后,它干了什么?
- Sort List @leetcode