Új hozzászólás Aktív témák
-
Zalanius
tag
válasz
Bobrooney
#3042
üzenetére
Kipróbáltam két oszloppal, 10 ezer sorban, de nehezítésképpen úgy, hogy az első 5000-ben csak X volt mindenhol, és az egyik gyümölcsnél később is csak X volt. Nem is igazán mérhető a futásidő, fél másodpercnél is kevesebb. Tehát vagy rengeteg oszlopod lehet, vagy sok százezer sor, vagy még egyéb tényezők. De a 10 perc mindenképpen túlzás.
Tudom h nem kértél konkrétumot, de csak bemásolok ide egy rövidke scriptet, egyszerű megközelítésben, valami támpontot adhat azért.
Option Base 1
Sub t()
Dim gimilc()
Dim vannemX()
Dim n%, i%
Dim g As String
n = 1
ReDim Preserve gimilc(n)
ReDim Preserve vannemX(n)
gimilc(1) = Cells(2, 1).Value
vannemX(1) = False
If Cells(2, 2).Value <> "X" Then
vannemX(1) = True
End If
For i = 3 To 10000
g = Cells(i, 1).Value
Dim gindex%
gindex = -1
For j = 1 To n
If gimilc(j) = g Then
gindex = j
Exit For
End If
Next
If gindex = -1 Then
n = n + 1
ReDim Preserve gimilc(n)
ReDim Preserve vannemX(n)
gimilc(n) = g
vannemX(n) = False
If Cells(i, 2).Value <> "X" Then vannemX(n) = True
Else
If vannemX(gindex) = False Then
If Cells(i, 2).Value <> "X" Then vannemX(gindex) = True
End If
End If
Next
End Sub -
csaszizoltan
csendes tag
válasz
Bobrooney
#3042
üzenetére
Szia!
Gondolom az egyes celláinak elérése nem gyors vagy minden X találat után indítasz egy új átfésülést, ami fölösleges ezért
Rakd tömbbe a gyümölcsneveket (ha sokféle van, kb 100-nál több akkor bináris fába, ahol a fa egyes mutatói még két tömbben helyezkednek el tömbindexként) és másik két ugyanakkora tömbbe, hogy van X benne és van nem X benne. Ez az algoritmus egyszer fog végigfutni a munkalapon.
Érdekelne majd a "gyümölcsökre" megvalósított algoritmus, hogy beleszólhassak a gyorsabb futás érdekében.
Üdv
Új hozzászólás Aktív témák
- Media Player Classic és Home Cinema (MPC-HC)
- Sok hűhó négyszázért: AMD Ryzen 7 9850X3D
- Elárulta a Puget Systems, hogy melyik komponensből mennyi romlik el
- Házimozi belépő szinten
- Villanyszerelés
- TCL LCD és LED TV-k
- Vigneau interaktív lokálblogja
- Modding és elektronikai kérdések
- Videós, mozgóképes topik
- Egyéni arckép 2. lépés: ARCKÉPSZERKESZTŐ
- További aktív témák...
- DDR4 és DDR5 RAM modulok
- P15 Gen2i 15.6" FHD IPS i7-11850H RTX A3000 32GB 512GB NVMe magyar vbill ujjolv IR kam gar
- Laptopok, PC-k, alaktrészek, alapok, és egyéb kiegészítőlk kiárusítása, garanciával!!!
- iPad Pro 11-inch (M4) Wi-Fi 256GB
- Samsung Galaxy S24 5G DS 8 + 128GB még gyári garanciával eladó!
- Samsung Galaxy A52s 5G / 6/128GB / Kártyafüggetlen / 12Hó Garancia
- 2 TB-os Samsung 980 PRO M.2 SSD with heatsink - garanciával
- BESZÁMÍTÁS! MSI B450M R5 5500 16GB DDR4 512GB SSD RX 6500 XT 8GB Rampage SHIVA ADATA 600W
- LG 32GS95UX - 32" OLED / UHD 4K / 240Hz - 480Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- Bomba Ár! Lenovo ThinkPad L14 G2i - i5-1145G7 I 16GB I 256SSD I 14" FHD Touch I Cam I W11 I Gar
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


