Új hozzászólás Aktív témák

  • opr

    nagyúr

    válasz zsolti_20 #14423 üzenetére

    Erre nem letezik tokeletes algoritmus sajnos. Idealishoz kozeliteni tudsz, de elerni soha nem fogod, hacsak nem mesz vegig az osszes permutacion.
    Innentol kezdve tobb megkozelites lehetseges, leirom amik igy hirtelen eszembe jutnak, biztos lehet ezeknel jobb/optimalisabb megoldast is talalni, ha kicsit tovabb gondolkozunk.

    Kapasbol kerdes, hogy ebbe a listaba csak olyan megrendelesek kerulnek-e bele, amik onmagukban teljesithetoek.
    Ha nem, akkor ez lenne az elso szurom.

    Ha mar van olyan lista, amiben csak a pillanatnyilag teljesitheto megrendelesek vannak, akkor a kovetkezo kerdes az, hogy a sulyozas kizarolag a kikuldott csomagok mennyisege, vagy mas szempont is (pl rendelesi ertek, rendelesi/varakozasi ido, stb).

    Ha csak a csomagok szamossaga, akkor:
    a) megoldas: csinalunk egy uj oszlopot, amiben osszegszeruen szerepel a megrendelt dolgok darabszama, tehat 1-1-1-1-2 eseten az, hogy 6. Ezek utan ilyen teren novekvo sorrendben vegig lehet menni a rendeleseken, es a teljesithetoeket berakni a "kosarba". Ha valamibol elfogy az, ami raktaron van, akkor onnantol ha olyan rendelesbe botlunk, amibe kene olyan is, ugrunk tovabb.
    Van tobb buktatoja a dolognak, de alapvetoen mukodokepes lehet, ha mellette bevezettek valami extra kriteriumot, hogy x ideje bent allo rendeles top prioritast kap vagy ilyesmi.
    b) megoldas: hasonlo az A-hoz, annyi, hogy minden rendeles utan csinalsz egy meg teljesitheto rendeles tablat, es ezen mesz vegig.

    De oszinten szolva -bar so-so mukodnek- ez mind szar megoldas. Ennel jobb megoldas az, hogyha a raktarkeszlet rendelesfuggoen szepen okosan vezetve van, es olyan dolog, amibol mar tobb rendeles nem teljesitheto, vagy nem rendelheto, vagy ki van irva, hogy elfogyott es rendelni/gyartani kell belole. Es akkor nem kell szivni megoldhatatlan problemakkal sem. :D

    En azt szoktam mondani, hogyha olyan problemara, aminel nem biztos, hogy ez indokolt, bonyolult algoritmus kell, akkor lepj egyet hatra es gondold ujra, mert nagyon valoszinu, hogy valami mar regen el van b@szva, es inkabb azt kene kijavitani.

    Sok sikert! :R

Új hozzászólás Aktív témák