Hirdetés
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- gban: Ingyen kellene, de tegnapra
- GoodSpeed: A RAM-válság és annak lehetséges hatásai
- Gurulunk, WAZE?!
- Magga: PLEX: multimédia az egész lakásban
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
-
LOGOUT

Új hozzászólás Aktív témák
-
pmonitor
aktív tag
válasz
sztanozs
#15629
üzenetére
>Alapvetően ez nem egy programozási fórum, vsz nem fogsz találni túl sok fórumozót, akit ez különösképp megmozgatná
Igazad van. De azért úgy néz ki, hogy olvassák(nem tudom, csak gondolom). Abból gondolom, hogy azért a google az első oldalon hozza az oldalam az "1D vágás" kulcsszóra(ezúton is szeretném megköszönni azoknak, akik meglátogatták az oldalam). Igaz, nem csak ezen a fórumon vagyok, de azért a legaktívabb itt vagyok.
Mondjuk azt látom, hogy itt a rendszeres válaszadók nagyon nagy többségét nem érdekli a konkrét problémák kóddal, vagy legalább pszeudokóddal való megoldása). Ez nem feltétlenül baj. Ráadásul azért van kivétel is. Egyébként az "ország legnagyobb fejlesztői portál"-jának nevezett fórumon sem volt szokásban a kód/algoritmus adása a rendszeres válaszadók között. Én kivétel voltam. Amire tudtam válaszolni, arra válaszoltam. Csak a moderátor ott is a "rizsázást" tartotta "a priori"-nak. Mondjuk részben meg lehet érteni olyan helyen, mint ez a fórum, ahol alapvetően nem a programozás a fő irányvonal. De sajnos ott is csak ez megy. Mondjuk abból a szempontból meg lehet érteni, hogy ha valaki viszonylag hosszabb kódot ad, akkor egyrészt abból ki lehet venni, hogy valóban van-e köze a programozáshoz(tehát gyakorló programozó-e). Lásd joysefke-t, aki viszonylag rövid idő alatt összeállított 1 kódot, OOP elven. Másrészt viszont az is kijön, ha valakinek lövése sincs az egészhez. Ezért nem adnak kódot/pszeudokódot, még ha tudják is a választ. Meg amúgy is könnyebb a rizsázás. De ez a felfogás szerintem nem lenne megengedhető egy magát fejlesztői oldalnak tituláló oldalon. Itt még azért jobban elfogadható.
Ugyanakkor nem tagadom, hogy az esetleges olvasók miatt linkeltem be az oldalam ide többször is. De gondolom ez nem bűncselemény.
A fórumozásnak van rossz és jó oldala is. -
Marky18
aktív tag
válasz
sztanozs
#15629
üzenetére
egyetemi jegyzet vs optimalizált kód.
Szerintem a legfontosabb az, hogy ellassa a kod a feladatat. Hiaba irod meg a leheto legoptimalisabb low-level eljarast egy adott problemara, ha az egesz feladat 1%-at oldottad meg a rendelkezesre allo ido nagy resze alatt, illetve hiaba irnak brutalgyors peldakat az egyetemi jegyzetben, ha egy tapasztalt fejlesztonek is orakba telik kibogozni, hogy mi tortenik. Az OOP valahol ennek menten jott letre, hogy olvashato, ujrahasznalhato kodot irjunk es ne csak egy szakallas szaki tudja, hogy mukodik az adott kodreszlet.Azt sem szabad elfelejteni, hogy a low-level problemak nagy resze mar meg lett oldva evtizedekkel ezelott, nekunk csak hasznalni kell a megirt kodokat, hogy user kozeli problemakat oldjunk meg veluk. Hardverkozeli kodot C-ben is ASM-ben irnak, webalkalmazast pedig C#-ban, Javaban, mert nem akarunk az OSI modellben turkalni, hogy egy GET requestet lefuttassunk. Mas retegbeli problema, mas retegbeli eszkozoket kivan.
-
pmonitor
aktív tag
válasz
sztanozs
#15629
üzenetére
Ez a kód:
static void Teszt_5(char[] arr)
{
char[] arr2 = (char[])arr.Clone();
int size = arr.Length;
QuickSort(arr2, 0, size - 1);
//Array.Sort(arr2);
int n = arr2.Length;
int i, j;
char temp;
//for (i = 0; i < n; ++i) arr2[i] = i + 1;
while (true)
{
// kiirjuk az aktualis permutaciot
/*for (i = 0; i < n; ++i) Console.Write("{0} ", arr2[i]);
Console.WriteLine("");*/
// megkeressuk, hol kezdodik az utolso monoton csokkeno reszsorozat
for (i = n - 2; i >= 0 && arr2[i] >= arr2[i + 1]; --i) ;
// ha a teljes sorozat monoton csokkeno, akkor vegeztunk
if (i < 0) break;
// a csokkeno reszsorozat elotti elemet ki kell cserelnunk a reszsorozatban nagysag szerint rakovetkezovel
for (j = n - 1; arr2[j] <= arr2[i]; --j) ;
temp = arr2[i]; arr2[i] = arr2[j]; arr2[j] = temp;
// tovabbra is monoton csokkeno a reszsorozatunk, forditsuk meg, hogy monoton novekedo legyen
for (j = i + 1; j < n + i - j; ++j)
{
temp = arr2[j]; arr2[j] = arr2[n + i - j]; arr2[n + i - j] = temp;
}
}
}Ennek a kódnak:
static void IsmPermutacio(char[] tomb2, int[] N, int n, int[] W1, int s, int i)
{
int[] V = new int[n];
int[] W = new int[n];
CopyMemory(W, W1, (uint)(n * intSize));
//Array.Copy(W1, W, n);
if (i == 0)
{
for (int l = 0; l < s; ++l) W[l] = -1;
}
if (s != 0)
{
bool ind = true;
do
{
Kombinacio(V, s, N[i], ref ind);
if (!ind)
{
Betesz(N[i], n, V, W, i);
IsmPermutacio(tomb2, N, n, W, s - N[i], i + 1);
Kivesz(W, n, i);
}
} while (!ind);
}
else
{
Betesz(N[i], n, V, W, i);
//*****************************************************
/*for (int q = 0; q < n; ++q) Console.Write(tomb2[W[q]]);
Console.WriteLine("");*/
//*****************************************************
for (int l = 0; l < n; ++l) W[l] = -1;
}
}
static void Kombinacio(int[] V, int n, int k, ref bool ind)
{
if (ind)
{
for (int i = 0; i < k; ++i) V[i] = i;
ind = false;
return;
}
for (int i = k - 1; i > -1; --i)
{
if (V[i] < n - k + i)
{
++V[i];
for (int j = i + 1; j < k; ++j) V[j] = V[j - 1] + 1;
return;
}
}
ind = true;
}
static void Betesz(int ni, int n, int[] V, int[] W, int i)
{
int j = -1, l = 0;
for (int p = 0; p < ni; ++p)
{
while (l < n)
{
if (W[l] == -1) ++j;
if (j == V[p])
{
W[l] = i;
break;
}
++l;
}
}
}
static void Kivesz(int[] W, int n, int i)
{
for (int l = 0; l < n; ++l) if (W[l] == i) W[l] = -1;
}Nem az optimalizálása, hanem teljesen más(egyszerűbb) algoritmus.
És sztem az első algoritmus érthetőbb is.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- OLED monitor topic
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Milyen notebookot vegyek?
- Xiaomi 15T Pro - a téma nincs lezárva
- Ne már! Drágább lesz a GPU a memóriapánik miatt?
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Windows 11
- Anime filmek és sorozatok
- Jelszókezelők
- Borderlands 4
- További aktív témák...
- Bomba ár! Lenovo ThinkPad L13 G1i - i5-10GEN I 8GB I 256SSD I 13,3" FHD I HDMI I W11 I Cam I Gar
- Bomba ár! Lenovo ThinkPad L390 - i5-8GEN I 8GB I 256SSD I 13,3" FHD I HDMI I Cam I W11 I Gari!
- Lenovo ThinkPad X1 Carbon Gen 9 i7-1185G7 32 GB RAM Iris Xe 4k kijelző törésgarancia
- Bomba ár! Lenovo ThinkPad X13 G1- i5-10310U I 16GB I 256SSD I 13,3" FHD Touch I Cam I W11 I Gari!
- Eladó Denon 4400h
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- 14" Dell Latitude laptopok: 5400, 5480, 5490, 7480, E6410, E6440, E5450 / SZÁMLA + GARANCIA
- BESZÁMÍTÁS! Sony PlayStation 5 Slim 1TB SSD digital konzol garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 15 Pro 128GB Blue Titanium -1 ÉV GARANCIA -Kártyafüggetlen, 100% Akkumulátor
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

A fórumozásnak van rossz és jó oldala is.

