- iPhone topik
- Milyen okostelefont vegyek?
- Yettel topik
- Fotók, videók mobillal
- Telekom mobilszolgáltatások
- Google Pixel 10 és 10 Pro összehasonlító gyorsteszt
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Android alkalmazások - szoftver kibeszélő topik
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
Új hozzászólás Aktív témák
-
amargo
addikt
Na de ha megtaláltad, akkor miért nem elég neked csak egy példa a brute force algo
Itt van egy olyan rész, hogy The C code:void BF(char *x, int m, char *y, int n) {
int i, j;
/* Searching */
for (j = 0; j <= n - m; ++j) {
for (i = 0; i < m && x[i] == y[i + j]; ++i);
if (i >= m)
OUTPUT(j);
}
}Ezt most betudom annak, hogy fáradt és megszeppent vagy, én is szoktam ilyen lenni. De legközelebb, ha konkrét linkeket kapsz, nézd is meg.
-
amargo
addikt
válasz
cellpeti #788 üzenetére
Nyers erő.
Azaz, ész nélkül mindent vizsgálunk. Miközben, ha megnézed a linket, rengeteg olyan algoritmus van, ami a szöveget elemezve elég jó szabályokat állít fel.
Tehát vegyük S[1..n] szöveget és M[1..m] mintát.
Akkor a művelet igények, így alakulnak,
BF n*m.
KMP n legjobb és legrosszabb esetben is a szótár felállítása m. Én az érthetősége miatt jobban szeretem ezt, mint a RK-t, igaz az hatékonyabb, mert a mintát nem kell végigolvasnunk.
QS n/m +1RK (Ami még említve lett) n
Viszont itt, ha sok a hamis talált, akkor a BF műveletigényével azonost kapunk. -
amargo
addikt
válasz
Fire/SOUL/CD #784 üzenetére
Hi!
#define REHASH(a, b, h) ((((h) - (a)*d) << 1) + (b))
void KR(char *x, int m, char *y, int n) {
int d, hx, hy, i, j;
/* Preprocessing */
/* computes d = 2^(m-1) with
the left-shift operator */
for (d = i = 1; i < m; ++i)
d = (d<<1);
for (hy = hx = i = 0; i < m; ++i) {
hx = ((hx<<1) + x[i]);
hy = ((hy<<1) + y[i]);
}
/* Searching */
j = 0;
while (j <= n-m) {
if (hx == hy && memcmp(x, y + j, m) == 0)
OUTPUT(j);
hy = REHASH(y[j], y[j + m], hy);
++j;
}
}Igazából viszont nem értem, mivel a linkelt oldalon ott van az algoritmus azt csak implementálni kell. De ezt én is a lentebb linkelt oldalról raktam be.
Bár gondolom rothkrisz nem hiszem, hogy ennyire optimalizált kódot szeretne megírni, ha ilyet akarna, akkor ismerne még pár szóban forgót: Knuth-Morris-Pratt, Quick-Search stb...
Az én javaslatom inkább egy sima Brute force lenne, annak megvalósítás íme:
void BF(char *x, int m, char *y, int n)
{
int i, j;
/* Searching */
for (j = 0; j <= n - m; ++j) {
for (i = 0; i < m && x[i] == y[i + j]; ++i);
if (i >= m)
OUTPUT(j);
}
} -
amargo
addikt
válasz
Fire/SOUL/CD #505 üzenetére
Jogos!
Én csak alakiságot figyeltem. -
amargo
addikt
A moduló jobb erre, de Te ezt kerested:
//------------------------------------------
int rounder(double pix)
{
double egesz = 0, tort = 0;
tort = modf(pix,&egesz);
if(tort >= 0.5)
{
pix = ceil(pix);
}
else if(tort < 0.5)
{
pix = floor(pix);
}
return pix;
}//int rounder
//------------------------------------------Szerk:
Kódba raktam -
amargo
addikt
válasz
Fire/SOUL/CD #462 üzenetére
Hopp most esik le, Te nem is ismered a C# .NET-et.
"hogyan kell Visual C# 2008-ban Console Application-t létrehozni, amiben a PRINTF használható, nem a WRITELINE."
Nos pedig Lortech erre a kérdésedre is válaszolt, csak feltételezte, hogy valamennyire tisztában vagy .NET környzettel.
.NET keretrendszert úgy képzeld el mint egy virtuális fordító gépet(java-ból ismerős lehet).
Bocsánat, de ki kell ugranom, ha visszatértem kifejtem. -
amargo
addikt
No, az a 10ed mp felvillanó ablak volt a kódod, az hogy nem működiik meg elég tágfogalom, mivel a leírtak alapján működik.
Az hogy egy VisualStudio-t nem sikerült felrakni? Miért nem? Hogy csinálod?
Az hogy: "cannot create project" még az is lehet, hogy egészen mást akartál csinálni, mint egy C++-s programot (ott csak a könyvtárakkal tudsz C-t csinálni)..Ha meg sehogysem jön össze ez, akkor is inkább eclipse-t használj, szerintem(bár ott a 3 klikken kívűl kicsit többet kell tudni) vagy codeblocks.
-
amargo
addikt
válasz
[HUN]Zolee #146 üzenetére
cahar *p;
(*p).valami;
helyett elég a
p->valami; -
amargo
addikt
Most vagy én vagyok macisajt vagy.. a többiek nem értettek meg.
Tv ha jól értem az nem világos számodra, mi a fenéért kell a main nak int visszatérési típus, nos én azzal az egyszerű dologgal tudnám magyarázni, hogy bármikor megtud szakítani a futását a programodna.
szerk:
Amint látom doc írta, csak a végén -
amargo
addikt
Én pártolom régebben is volt ilyen, csak elsüppedtek.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Villanyszerelés
- A fociról könnyedén, egy baráti társaságban
- Mégis marad a Windows 10 ingyenes frissítése
- Milyen okostelefont vegyek? OFF topik
- Diablo IV
- Effektíve TKL méretűek a Corsair legújabb, numerikus paddal ellátott klaviatúrái
- AliExpress tapasztalatok
- Gyúrósok ide!
- iPhone topik
- Milyen okostelefont vegyek?
- További aktív témák...
- Sapphire Pulse RX 6600 XT - eladó!
- ÚJ DELL XPS 14 9440 PROFI Laptop, -70% 14,5" Ultra 7 155H 12Mag 16/512 FHD+ 120Hz /Millió! Ft/
- Vadonat új garanciás laptopok hihetetlen áron! Szeptember Októberi lista! Razer blade zephyrus
- ÚJ HP ENVY x360 Érintős Hajtogatós Laptop Tab -30% 15,6" AMD RYZEN 7 7730U 8Mag 16/1TB FHD
- 512MB (3db) - 1GB (16db) - 2GB (21db) DDR2 RAM-ok (és RAM-Kitek)
- Bomba ár! Fujitsu LifeBook U904 - i5-4G I 10GB I 256SSD I 14" QHD+ I HDMI I Cam I W10 I Garancia!
- Katonai Rugged laptopok Panasonic Toughbook és Getac S410 6-11.gen gar.
- Honor 90 512GB, Kártyafüggetlen, 1 Év Garanciával
- Asus TUF Gaming A17 - 17.3"FHD IPS 144Hz - Ryzen 7 6800H - 16GB - 512GB - Win11 - RTX 3050 Ti - HUN
- GYÖNYÖRŰ iPhone 12 mini 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS2955
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest