Forum » Programiranje » Hash table - C++
Hash table - C++
Trdi ::
Takole je besedilo naloge (del naloge):
"Sestavi objekt množice, ki vsebuje objekte iz neke splošne množice z linearno urejenostjo. Za osnovo predstavitve množice uporabi zgoščeno tabelo. Napiši še metode za unijo in presek."
Kako bi se te stvari lotil? Predvsem me zanima, kakšno hash funkcijo naj napišem, saj mora biti (vsaj meni zgleda tko) primerna za vsako stvar, od števil do objektov. A lahko kako uporabim podatek, da dobim množico, ki je linearno urejena?
"Sestavi objekt množice, ki vsebuje objekte iz neke splošne množice z linearno urejenostjo. Za osnovo predstavitve množice uporabi zgoščeno tabelo. Napiši še metode za unijo in presek."
Kako bi se te stvari lotil? Predvsem me zanima, kakšno hash funkcijo naj napišem, saj mora biti (vsaj meni zgleda tko) primerna za vsako stvar, od števil do objektov. A lahko kako uporabim podatek, da dobim množico, ki je linearno urejena?
Trdota d.o.o.
noraguta ::
ja pomaga da ves da so podatki linerano urejeni.
tako set kot hash tabel sta spisan za v STL
http://www.sgi.com/tech/stl/index.html
tako set kot hash tabel sta spisan za v STL
http://www.sgi.com/tech/stl/index.html
OwcA ::
Omeniti velja, da hash tabela ni del STLja, temveč nestandardna razširitev (zaenkrat, v naslednji reviziji STLja bo vejetno vključena), tako zna priti do problemov pri prenosljivosti kode. set pa je standarden razred.
mnlkpo ::
$ echo '#include <map>' | g++ -E -xc++ - > /dev/null
$ echo '#include <hash_map>' | g++ -E -xc++ - > /dev/null
<stdin>:1:20: hash_map: No such file or directory
$ g++ -v
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
Configured with: /netrel/src/gcc-3.2-3/configure --enable-languages=c,c++,f77,java --enable-libgcj --enable-threads=posix --with-system-zlib --enable-nls --without-included-gettext --enable-interpreter --disable-sjlj-exceptions --disable-version-specific-runtime-libs --enable-shared --build=i686-pc-linux --host=i686-pc-cygwin --target=i686-pc-cygwin --enable-haifa --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include --libexecdir=/usr/sbin
Thread model: posix
gcc version 3.2 20020927 (prerelease)
$
delo to pod >3.2? ali sem naredil kaj narobe?
holy crap! 27.9. je moj rostni dan haha :)
$ echo '#include <hash_map>' | g++ -E -xc++ - > /dev/null
<stdin>:1:20: hash_map: No such file or directory
$ g++ -v
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
Configured with: /netrel/src/gcc-3.2-3/configure --enable-languages=c,c++,f77,java --enable-libgcj --enable-threads=posix --with-system-zlib --enable-nls --without-included-gettext --enable-interpreter --disable-sjlj-exceptions --disable-version-specific-runtime-libs --enable-shared --build=i686-pc-linux --host=i686-pc-cygwin --target=i686-pc-cygwin --enable-haifa --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include --libexecdir=/usr/sbin
Thread model: posix
gcc version 3.2 20020927 (prerelease)
$
delo to pod >3.2? ali sem naredil kaj narobe?
holy crap! 27.9. je moj rostni dan haha :)
Zgodovina sprememb…
- spremenilo: mnlkpo ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | gcc + math.h + -lm problemOddelek: Programiranje | 981 (897) | BigWhale |
» | mysql 5.0.16 gentooOddelek: Operacijski sistemi | 1263 (1181) | yimi |
» | unmergal sem gccOddelek: Operacijski sistemi | 1894 (1640) | borchi |
» | Gentoo Linux & nov KDE problem!Oddelek: Pomoč in nasveti | 1239 (1179) | Tarzan |
» | Problemi s compilanjem v Linux Slackware 9.1Oddelek: Operacijski sistemi | 1889 (1608) | Vesoljc |