Forum » Programiranje » Java-Najdaljše skupno podzaporedje
Java-Najdaljše skupno podzaporedje
tx-z ::
Napisal sem program ki mi poišče najdaljše skupno podzaporedje dveh nizov, vendar je zelo počasn. Program sem že v osnovi tako napisal da se ga ne da bolj optimizirati, zato bi ga rad napisal na drug način.
Imam sicer pseudo kodo tega programa vendar ga ne znam napisati.
A bi lahko kdo to prepisu v javo? Pomožnosti danes, ker moram jutri oddat(sicer ni pomembno če nardim ampak bi dobil več točk).
Hvala že vnaprej!
Imam sicer pseudo kodo tega programa vendar ga ne znam napisati.
Najdaljše Skupno Zaporedje = NSZ
NSZ(X(1...i), Y(1..j))
{
če je X ali Y prazno zaporedje
__vrni prazno zaporedje
če je xi = yj
__vrni NSZ(X(1...i-1), Y(1..j-1)) + xi
sicer
__vrni max(NSZ(X(1...i), Y(1...j-1)), NSZ(X(1...i-1), Y(1...j)))
}
V opisu velja, da je X(1...i) zaporedje znakov x1, x2, ... , xi. Podobno velja seveda tudi za zaporedje Y. Znak + je mišljen kot konkatenacija. Funkcija max vrne daljšega od obeh zaporedij.
A bi lahko kdo to prepisu v javo? Pomožnosti danes, ker moram jutri oddat(sicer ni pomembno če nardim ampak bi dobil več točk).
Hvala že vnaprej!
tx-z
- spremenilo: tx-z ()
PaX_MaN ::
Evo, nekaj na hitro:
static String NSZ(String X, String Y) { if(X == null || Y == null || X.length() == 0 || Y.length() == 0) return ""; if(Character.toString(X.charAt(X.length()-1)).equals(Character.toString(Y.charAt(Y.length()-1)))) { return NSZ(X.substring(0, X.length()-1), Y.substring(0, Y.length()-1)) +String.valueOf(X.charAt(X.length()-1)); } String first = NSZ(X, Y.substring(0, Y.length()-1)), second = NSZ(X.substring(0, X.length()-1), Y); if (first.length() >= second.length()) return first; else return second; }
tx-z ::
Super! Sm sicer že imel napisan vse if stavke,ampak nisem vedel kako klicati rekurzivno, tako da hvala!! I owe you one
Si morm zdele ogledat kako to dejansko deluje...Kr ročno na papirju hehe
Si morm zdele ogledat kako to dejansko deluje...Kr ročno na papirju hehe
tx-z
Zgodovina sprememb…
- spremenilo: tx-z ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [C++] Ponavljanje črk v stringuOddelek: Programiranje | 1384 (1170) | darkkk |
» | [javaScript] Preverjanje formata zapisa EMŠOOddelek: Programiranje | 2939 (2559) | win64 |
» | C++ in števkeOddelek: Programiranje | 1307 (1114) | Tutankhamun |
» | Java-Izdelek-NujnoOddelek: Programiranje | 1507 (1279) | iggy |
» | malo pomočiOddelek: Programiranje | 1060 (894) | ERGY |