Autor | Zpráva | ||
---|---|---|---|
Stibi Profil |
#1 · Zasláno: 24. 12. 2007, 15:44:24
Zdravím, ze všeho nejdřív chci popřát krásné Vánoce.
Kdyby jste si mezi užíváním si klidu, našli chvilku pro nápovědu k mému problému, byl bych vděčný. Zajímal by mě optimální algoritmus, pomocí kterého zjistím, zdali každá položka v poli, či jiné datové struktuře je unikátní, že se v tom jednom poli neopakuje. Děkuji velice. |
||
Mastodont Profil |
#2 · Zasláno: 24. 12. 2007, 15:50:02 · Upravil/a: Mastodont
No, v PHP stačí zavolat funkci array_count_values ... to samozřejmě není obecné řešení, ale třeba ti to bude k užitku.
|
||
DoubleThink Profil * |
#3 · Zasláno: 24. 12. 2007, 22:11:51
..odstranit duplicitní hodnoty pak lze funkcí array_unique()
|
||
Mastodont Profil |
#4 · Zasláno: 25. 12. 2007, 08:20:03
V některých jazycích je vestavěný typ Collection, u kterého se nesmí vyskytovat duplicity indexů prvků kolekce .. tam stačí prostě všechny prvky pole do kolekce přidat a zachytávat chyby při vzniku duplicity.
|
||
Stibi Profil |
#5 · Zasláno: 25. 12. 2007, 12:03:57
Collection python jak se zdá neumí ...
Jinak řešení mám, sice to není ončo, ale funguje to, ideálně bych chtěl, abych nemusel testovat zdali zdrojové a dočasné pole má stejnou délku, ale abych hned když skript zjistím že aktuální hodnota uz v poli je, aby se ukončil, zkoušel jsem break, ale nedařilo se. Ještě si s tím pohraju. def check_unique(data): temp = [] for x in data: if x in temp: pass else: temp.append(x) if len(data) == len(temp): return True else: return False pole = [1,2,3,4,5] if check_unique(pole): print 'ok' else: print 'duplicita' |
||
Časová prodleva: 16 let
|
0