|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
[C++] hashmap e altri.
Allora la domanda è semplice in c++ c'è STL (Standard Template Libary) che fornisce i templete per map list ecc ecc.
La cosa che mi spaventa e che Queste implementazioni lasciano un pò a desiderare a livello di performance.... ed un uso massiccio potrebbe rallentare moltissimo un programma .... vorrei sapere se esiste una libreria abbastanza standard che mi sovrascrive in qualche modo STL con implementazioni un pochino piu veloci tipo un'hashmap? |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
![]() Da dove hai preso questi dati sulle performance scadenti delle STL? E se è scadente l'STL allora Java e C# sono pachidermi addormentati. Se vuoi puoi scriverti qualcosa di più veloce direttamente in assembly. |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Scusatemi probabilmente mi sono espresso un pò male ..... nn dico che il c++ sia lento anzi nn mi azzerderei mai (lo dimostra che per lavoro uso java e per fare softwerini per me solo c/c++).
Intendevo dire che per esempio in java ci sono delle implementazioni di mappe molto efficenti...... per esempio con una mappa di 1.000.000 elementi, se io vado a fare una ricerca di un x elemento, nonostante le performance del c++, probabilmente una HashMap java fa prima... esistono implementazioni estreme di questo tipo in c++ ?? |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Quote:
![]() Qualora tu le abbia fatte, e ti risulta evidente la differenza di performance, l'unica cosa che mi viene in mente e' che la map<> di C++ e' basata su RB-tree; non so se sia standard ma molte implementazioni della stl forniscono anche una hashmap<> vera e propria. Prova ad usare quella.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:59.