JAvaキューおよびhashset hashmapdまとめ
2923 ワード
キューおよびhashset hashmapd総括キューは秩序化されているが、hashsetおよびhashmapは秩序化を保証せず、hashsetは1つの集合に相当し、hashmapはマッピングである.Hashsetが格納するデータはhashsetに既に存在すると格納されないがhashmapは異なり,キーワードが同じであれば格納され,元のマッピングが新たに置き換えられる.したがって、そのキーワードに対応するvalueは変更できます.Hashsetは、配列またはキュー内の同じ要素を重複しないように除去するために使用できます.Hashmapは、キーワードを使用して、対応するvalueの値を変更することができる.関連練習問題1.任意のint次元配列を与える a.配列内の重複要素を取り除く b.配列の並べ替え
2.任意の文字列String str=「sadsadsadljsaljdlsajdlsajdlsajdlsajd」をソートする必要がないようにsettreeを使用することもできます. 統計文字列内の各文字の出現回数
num=map.get(j);そのnum=NULL=num?1;++num;代わりに、これでもっと簡単になりました.
public class ArrayList<E> {
public static void main(String[] args) {
//
int a[] = { 2, 4, 6, 3, 8, 2, 6, 9, 0, 7 };
ArrayList<Integer> array = new ArrayList<Integer>();
int b[] = array.change(a);
for(int i=0;i<b.length;i++){
System.out.println(b[i]);
}
}
public int[] change(int a[]) {
// 1
java.util.ArrayList<Integer> array = new java.util.ArrayList<Integer>();
//
java.util.HashSet<Integer> list = new java.util.HashSet<Integer>();
// ,
for (int i = 0; i < a.length; i++) {
int j = a[i];
list.add(j);
}
//
java.util.Iterator<Integer> iter = list.iterator();
int h=0;
while (iter.hasNext()) {
int i = iter.next();
a[h]=i;
h++;
}
//
for(int i=0;i<list.size()-1;i++){
for(int j=i+1;j<list.size();j++){
if(a[i]>a[j]){
int b=a[i];
a[i]=a[j];
a[j]=b;
}
}
}
int[] c = new int[list.size()];
for(int i=0;i<list.size();i++){
c[i]=a[i];}
return c;
}
}
2.任意の文字列String str=「sadsadsadljsaljdlsajdlsajdlsajdlsajd」をソートする必要がないようにsettreeを使用することもできます. 統計文字列内の各文字の出現回数
public class stringtest {
public static void main(String[] args) {
//
String str = "abbcccddddeeeee";
stringtest st = new stringtest();
HashMap<Character, Integer> map = st.count(str);
java.util.Set<Character> keys = map.keySet();
//
for (char c : keys) {
int count = map.get(c);
System.out.println(c + " :" + count);
}
}
public HashMap<Character, Integer> count(String str) {
java.util.HashMap<Character, Integer> map = new java.util.HashMap<Character, Integer>();
int count = 1;
for (int i = 0; i < str.length(); i++) {
char j = str.charAt(i);
boolean b = map.containsKey(j);
if (!b) {
map.put(j, count);
} else {
int a = map.get(j);
map.put(j, a + 1);
}
}
return map;
}
}
num=map.get(j);そのnum=NULL=num?1;++num;代わりに、これでもっと簡単になりました.