- Azonnali fotós kérdések órája
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Gaming notebook topik
- 5.1, 7.1 és gamer fejhallgatók
- Idővel a képgenerálást is megkapja a PlayStation
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- OLED TV topic
- Bluetooth hangszórók
- HDD probléma (nem adatmentés)
- iPad topik
Új hozzászólás Aktív témák
-
Gyuri16
senior tag
segitseget szeretnek kerni reflectionnel. suliba irok egy projektet, ami kulonbozo algoritmusokat hasonlit ossze (gyakorlatilag a futasi idejuket meri).
az objektumstruktura ilyen:
AbstractHeap<E>
|
BinaryHeap<E>
na most ha kontkretan van egy ilyenunk:
BinaryHeap<Integer>, akkor annak van egy olyan fuggvenye hogy Insert(Integer e)
namarmost en szeretnek egy tesztelo objektumot, aminek lesz egy referenciaja a heap-re, es megmondom neki melyik metodust (pl Insert) milyen paramerekkel hivja meg, o lefuttatja, es megmondja meddig tartott neki. itt egy kod, hogy mit probaltam eddig:public long Test(String name, Object[] args) {
long t1 = 0, t2 = -1;
Class<?>[] c = new Class[args.length];
for (int i = 0; i < args.length; i++)
c[i] = args[i].getClass();
t1 = System.nanoTime();
heap.getClass().getMethod(name, c).invoke(heap, args);
t2 = System.nanoTime();
return t2-t1;
}itt termeszetesen a heap egy private referencia. hasznalva igy lenne kb:
HeapTester<Integer> tester = new HeapTester<Integer>(new BinaryHeap<Integer>());
long ido = tester.Test("Insert", new Integer[] {4});namarmost itt az a problema (szerintem), hogy a heap.getClass() csak azt tudja, hogy BinaryHeap, es a <Integer> resz elveszik, igyaztan a getMethod mar azt mondja nem talalt olyan Insertet aminek Integer parameterei vannak (java.lang.NoSuchMethodException: heap.BinaryHeap.Insert(java.lang.Integer))
most ugy oldottam meg, hogy a HeapTester osztalyban szetirtam az osszes metodust, amit tesztelni akarok, es csak meghivom azt a fuggvenyt a referencian keresztul, es visszaadom meddig tart, de ez igy nagyon nem szep, illetve eleg komplikalt lenne igy komplikaltabb teszteket (mondjuk 2-3 fajta implementacion hajts vegre sok insertet, deletet stb. es mindegyiknel jegyezd meg az idoket). a kerdes az, hogyan lehetne ezt megcsinalni, hogy mukodjon ahogy en gondoltam?
koszi a segitseget elore is
sorry, kicsit hosszu lett, remelem azert ertheto a gond
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- World of Warships
- iPhone topik
- Linux kezdőknek
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Crimson Desert
- Mit tehetsz jogilag, ha átvertek, megkárosítottak a Hardveraprón?
- Le Mans Ultimate
- Gumi és felni topik
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- Azonnali fotós kérdések órája
- További aktív témák...
- Lenovo IdeaPad Slim 3/15.3" WUXGA/Snapdragon X X1-26-100 Processor/24GB/1TB SSD/GARANCIA
- MiIphone 13 White 128Gb-100% akku-13 tok+fóliák
- XFX Radeon RX 580 GTS XXX Edition 8GB GDDR5 256bit
- Samsung 28" T28E310EW LED Televízió-monitor eladó
- HP All In One Pc HP 23.8"FHD/Ultra 5 125U /16GB/512GB SSD/HP GARANCIA
- HIBÁTLAN iPhone 14 128GB Starlight-1 ÉV GARANCIA - Kártyafüggetlen, MS4650
- LG UltraGear 45GS95QX-B OLED Monitor! 45" 3440x1440 / 240Hz / 0.03ms / G-Sync / FreeSync! BeszámítOK
- LG 55QNED823RE / QNED / 55" - 140 cm / 4K UHD / 120Hz & 4ms / HDR Dolby Vision / FreeSync + HDMI 2.1
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Xiaomi Mi 11 lite 5G NE 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

