Блог пользователя taklo

Автор taklo, история, 7 лет назад, По-английски

Hello Codeforces Community, I am new to java until now I have done all of my competitive programming in C++ 17 and now I want to learn basic JAVA through sports programming . I have searched for it on google but i'm confused with various type of map containers available in java , Please guide me .

#include<iostream>
#include<map>
using namespace std;
int main(){
	map<int ,int > M;
	int n;
	cin>>n;
	int a[n];
	for(int i=0;i<n;i++){
		cin>>a[i];		
		M[a[i]]++;
	}
	if(M.find(10)!=M.end()){
		cout<<"10 is present \n ";
	}
	for(auto x: M){
		cout<<x.first<<" "<<x.second<<"\n";
	}
	return 0;
}

Please Tell me the alternative Java Code Thanks in Advanced

  • Проголосовать: нравится
  • -7
  • Проголосовать: не нравится

»
7 лет назад, скрыть # |
 
Проголосовать: нравится +12 Проголосовать: не нравится

Map is an interface in Java. You can either use HashMap<> or TreeMap<> as a concrete implementation of the Map interface. So if you want a map with key as Integers and value as String. You can do something like

Map<Integer, String> hMap = new HashMap<>();
Map<Integer, String> tMap = new TreeMap<>();

Worst case running time in both TreeMap and HashMap is $$$\mathcal{O}(\log n)$$$ (Each bucket has a balanced binary search tree instead of a linked list. They introduced this improvement in Java 8). But on an average you get $$$\mathcal{O}(1)$$$ for the HashMap

»
7 лет назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

Can anyone also tell me what are the alternatives for lower_bound and upper_bound in Java?