- Motorola Moto Tag - nyomom, követ
- Mobil flották
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Yettel topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- iGO Primo
- One mobilszolgáltatások
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Magisk
- Akciófigyelő: Jelentősen olcsóbban nyit az Ulefone új mindenese
Ú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
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Logitech Combo Touch iPad Pro 11" (1., 2. a 3. gen), szürke - UK billentyűzet ipad tok billentyűzet
- újszerű iPad Pro 11" (3. generációs) (2021) M1 chip Wi-Fi 128GB silver ezüst Apple
- szinte új iPhone 16 Pro Max 256GB desert titanium sivatagi titán független Apple 3 év garancia
- újszerű iPhone 16 Pro 256GB white titanium fehér titán iStyle független Apple 3 év garancia
- Dell XPS 13 9380 Prémium ultrabook HUN BILL
- BESZÁMÍTÁS!Gigabyte B650M R7 7800X3D 64GB DDR5 1TB SSD RTX 3080Ti 12GB Corsair 4000D Airflow TG 750W
- BESZÁMÍTÁS! ASROCK H310CM i5 8400 16GB DDR4 240GB SSD 1TB HDD GTX 980 4GB Aio Corp Croma CM 600W
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 5060 Ti 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Apple iPhone 16, Apple iPhone 16e, Apple iPhone 16 Plus, Apple iPhone 16 Pro
- Realme 8i 64GB / Normál állapotban / 12 hónap jótállással
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest