Spausdinimo lange pasirinkite „Išsaugoti kaip PDF“, kad nuosavą kopiją išsaugotumėte savo įrenginyje.
1Formulės ir metodai
Grafų teorija
Rankų paspaudimo lema
Σ deg(v) = 2|E|
Pilnieji grafai
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Reguliarusis grafas
|E| = n·k/2
Medis ir miškas
|E| = n − 1, |E| = n − c
Medžio lapai
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Oileris
ciklas: visų viršūnių laipsniai lyginiai; kelias: lygiai 2 nelyginio laipsnio viršūnės
Hamiltono ciklai grafe Kn
(n − 1)!/2
Dijkstros atnaujinimas
d(v) = min(d(v), d(u) + w(u, v))
L ilgio maršrutai
(Mᴸ)ij
Metodas
Užrašykite kiekvienos viršūnės laipsnį; laipsnių suma lygi dvigubam briaunų skaičiui.
Oilerio uždaviniuose patikrinkite, ar grafas jungus, ir suskaičiuokite nelyginio laipsnio viršūnes.
Medžiams naudokite n − 1 briaunų ir rankų paspaudimo lemą.
Dijkstros algoritme laikykite preliminarių atstumų lentelę ir kiekviename etape užfiksuokite mažiausio atstumo dar neužfiksuotą viršūnę.
Minimaliam karkasiniam medžiui surikiuokite briaunas pagal svorį ir praleiskite kiekvieną briauną, uždarančią ciklą (Kruskalis), arba auginkite vieną medį iš pradinės viršūnės (Primas).
2Uždaviniai
1.Algoritmai ir sudėtingumasVidutinis
Turint 1, 3 ir 4 vertės monetas ir 6 sumą, kiek monetų panaudoja godusis metodas „pirmiausia didžiausia moneta“, palyginti su optimaliu sprendiniu?
Godusis metodas paima 4 + 1 + 1 = 3 monetas, bet 3 + 3 panaudoja tik 2, todėl šiai monetų sistemai godusis metodas nėra optimalus; dinaminis programavimas – optimalus.
Atsakymas
B · Godusis panaudoja 3 monetas; optimalus sprendinys – 2
2.Algoritmai ir sudėtingumas
Atsakymas: D · Daug raktų gali susidurti ir patekti į tą patį krepšelį
Kodėl tai yra atsakymas
Esant geros maišos funkcijai ir tinkamam užpildymo koeficientui, krepšeliai vidutiniškai lieka trumpi; piktavališkai parinkti duomenys arba prasta maišos funkcija gali sudėti visus raktus į vieną krepšelį.
Atsakymas
D · Daug raktų gali susidurti ir patekti į tą patį krepšelį
3.Duomenų struktūros
Atsakymas: A · Supaprastinti kodą pašalinant specialiuosius atvejus pradžioje ar pabaigoje
Kodėl tai yra atsakymas
Su sargybiniu kiekvienas tikras mazgas turi pirmtaką, todėl įterpimui ar šalinimui pradžioje nereikia specialaus apdorojimo.
Atsakymas
A · Supaprastinti kodą pašalinant specialiuosius atvejus pradžioje ar pabaigoje
4.Duomenų struktūros
Atsakymas: A · [1, 3, 8, 5]
Kodėl tai yra atsakymas
Po 5, 3, 8 masyvas yra [3, 5, 8]; 1 patenka į indeksą 3, susikeičia su tėvu 5, o tada su 3, todėl gaunama [1, 3, 8, 5].
Atsakymas
A · [1, 3, 8, 5]
5.Grafų teorija
Atsakymas: Oilerio kelias, ne ciklas
Oileris, Hamiltonas ir medžiai: jungus grafas turi Oilerio ciklą (kiekviena briauna vieną kartą, grįžtama į pradžią), kai kiekvienos viršūnės laipsnis lyginis, ir Oilerio kelią, kuris nėra ciklas, kai lygiai dvi viršūnės turi nelyginį laipsnį; tada kelias eina iš vienos nelyginės viršūnės į kitą. Hamiltono ciklas aplanko kiekvieną viršūnę vieną kartą; Kn jų turi (n − 1)!/2. Medis su n viršūnių turi n − 1 briauną, o jungus grafas su m briaunų turi karkasinį medį, pašalinus m − n + 1 briaunų.
Oilerio kelias prasideda vienoje nelyginėje viršūnėje ir baigiasi kitoje.
6.Grafų teorija
Atsakymas: N = 1
Laipsniai: viršūnės laipsnis yra joje susitinkančių briaunų skaičius. Kiekviena briauna turi du galus, todėl laipsnių suma lygi dvigubam briaunų skaičiui: Σ deg(v) = 2|E| (rankų paspaudimo lema). Todėl nelyginio laipsnio viršūnių skaičius lyginis. Kn turi n(n − 1)/2 briaunų, k-reguliarusis grafas su n viršūnių – nk/2, o medis su n viršūnių – n − 1 briauną.