Jump to content
php.lv forumi

Ierakstu prioritaate


Kaklz

Recommended Posts

ir tabula, kuraa glabaajas kaut kaadi ieraksti. katram ierakstam ir sava prioritaate. Teiksim no 1 liidz ierakstu skaitam.

 

Nosaukums | Prioritaate

-------------------------

Ieraksts1 | 2

Ieraksts2 | 1

Ieraksts3 | 3

Ieraksts4 | 4

 

Ir administraacijas riiks, kuraa ir jaavar izveikt paarkaartoshanu peec prioritaates. Teiksim, peec augstaak mineetaas tabulas, ieraksti sakaartoti shaadi:

 

Ieraksts2

Ieraksts1

Ieraksts3

Ieraksts4

 

katram ierakstam blakus buutu bultinjas uz augshu un uz leju, lai vareetu attieciigi prioritaati palielinaat un ierakstu paarvietot uz augshu .. vai arii samazinaat un ierakstu paarvietot uz leju.

 

teoreetiski, realizaacija ir skaidra, tikai varbuut, ka kaadam ir vienkaarshaaks un labaaks variants padomaa?

 

Ir variants apmeeram shitaads:

select from tabula where ieraksts_id = $chosen_id

update tabula set priority = priority +/- 1 where priority = (atselekteetaa ieraksta priority attieciigi ar +/- 1)

update tabula set priority = priority - (vai arii +) 1 where ieraksts_id = $chosen_id

 

mosh ir kaadas labaakas idejas?

 

thnx jau ieprieksh :)

Link to comment
Share on other sites

besii aaraa man shaadas te sisteemas ;)

 

Taisi "prioritaashu mainju":

 

select prioritaate of augstaakstaavoshs

select prioritaate of current

 

update prioritaate of augstaakstaavoshs=prioritaate of current

update prioritaate of current=prioritaate of augstaakstaavoshs

Link to comment
Share on other sites

IMO, neko labaaku iipashi tur neizdomaat :)

 

es daru shaadi:

 

$ep="select p from table where id=$chosen_id";

update table set p=-1 where p=$ep

update table set p=$ep where p=$ep+$d

update table set p=$ep+$d where p=-1

 

 

$d= +-1 atkariibaa no bultinjas virziena

 

 

man jau arii reizeem ir tendence (slimiiba??) 5 rindinju kodu, kursh straadaa, paartaisiit 3 rindaas.... (un vai tik to pashu nevar divaas vai vienaa??? :unsure: )

 

tachu biezhi vien laika ekonomijas deelj labaak ir izveeleeties garaako gabalu.

Link to comment
Share on other sites

tieshi taa :)

ir gadiijies, ka shii optimizaacija beigaas panjem 2x-3x vairaak laika, nekaa to pashu izdarot brute force :) bet toties jautraak :)

heh, un ir gadiijies, ka optmizaacija vispaar ieiet graavii - vai nu ir paaraak daudz bugu vai izraadaas, ka "optimaalais" variants pat ir leenaaks par neoptimaalo :)

Link to comment
Share on other sites

×
×
  • Create New...