# Baidu written test 2022.4.12 + programming topic: simple integer problem

2022-04-23 15:08:00

package demo;

import java.util.*;

public class Main1 {

public static void main(String[] args) {

//List<Integer> list=new ArrayList<>(Arrays.asList(1,2,1,3,5,4,2,1,3,3));
// Input
Scanner cin=new Scanner(System.in);
int size=cin.nextInt();
cin.nextLine();
String string=cin.nextLine();
String[] arrstring= string.split(" ");
List<Integer> list=new ArrayList<>();
for(int i=0;i<arrstring.length;i++){

}
System.out.println(list);

// Store a set of data in a map Go to the assembly .
Map<Integer,Integer> map = new TreeMap();
for(int i=0;i<list.size();i++){

Integer count=1;
if(map.containsKey(list.get(i))){

count=map.get(list.get(i));
count++;
}
map.put(list.get(i),count); // Will automatically overwrite
}
// Put the set into the array （ Traverse ）
int[][] data=new int[map.size()][2];
int i=0;
for (Map.Entry<Integer,Integer> entry : map.entrySet()) {

data[i][0] =entry.getKey();
data[i++][1] =entry.getValue();
}

// Sort the array
int m=0;
int n=0;
int result=0;
// Sort by the second column from large to small ,
Arrays.sort(data,(a,b)->{

if(a[1]==b[1]) return b[0]-a[0];
return b[1]-a[1];
});
System.out.println(Arrays.deepToString(data));
m=data[0][0];
Arrays.sort(data,(a,b)->{

if(a[1]==b[1]) return a[0]-b[0];
return a[1]-b[1];
});
System.out.println(Arrays.deepToString(data));
n=data[0][0];
result=m-n;
System.out.println("result="+result);
}
}

1）Map Set up
2）Map Traversal of the set

package demo;

import java.util.*;

public class main3 {

public static void main(String[] args) {

// Change two sets of numbers into map aggregate
List<String> name=new ArrayList<>(Arrays.asList("a","b","c","d"));
List<Integer> age=new ArrayList<>(Arrays.asList(1,2,3,4));
Map<String,Integer> map=new TreeMap<>();
for(int i=0;i<name.size();i++){

map.put(name.get(i),age.get(i));
}
System.out.println(map);

// Count the number of elements in an array , And into map aggregate
List<Integer> data=new ArrayList<>(Arrays.asList(1,2,3,3,2,1,2,3,4,5,6,6,5,4,3));
Map<Integer,Integer> map1=new TreeMap<>();

for(int i=0;i<data.size();i++){

Integer count=1;
if(map1.containsKey(data.get(i))){

count=map1.get(data.get(i));
count++;
}
map1.put(data.get(i),count);
}
System.out.println(map1);

// The way to traverse
for(Map.Entry<String,Integer> entry: map.entrySet()){

String string=entry.getKey();
Integer integer=entry.getValue();
System.out.println("string="+string+" "+"integer="+integer);
}

}
}

https://yzsam.com/2022/04/202204231407525215.html