Note de curs, clasele 9-12, 21 decembrie 2012
From Algopedia
Jump to navigationJump to search
Toate clasele au venit la aceeași oră, căci a fost ultima zi de școală și s-a făcut dirigenție etc.
Geometrie computațională - generalități
- cazuri particulare
- coliniaritate
- intersecții exact la un capăt al segmentului
- pante infinite
- erori de calcul
- uneori testul de egalitate nu se face cu ==
- împărțirea la zero
- operații tot mai costisitoare (+/-, *, /, sqrt, sin...)
Geometrie analitică
- ecuația dreptei, diverse forme:
- două puncte
- x-intercept și y-intercept
- pantă și y-intercept
- ax + by + c = 0
- cazuri limită, erori de precizie
- definiția pantei
Problemuțe
- test dacă două drepte sunt paralele, perpendiculare
- intersecția a două drepte
- test de apartenență în triunghi
- test de apartenență în poligon
- intersecția a două segmente
- aria unui poligon - împărțire în trapeze
- rezultă ceva neevident: un poligon cu coordonate întregi are arie întreagă sau cu partea fracțională 0,5.
Algoritmi
- closest pair 2D - algoritm divide et impera O(n log n)
- demonstrație de optimalitate: reducere la distinctness, reducere la sortare
- înfășurătoarea convexă
- naiv (pentru toate segmentele, vedem dacă toate celelalte n-2 puncte sunt de aceeași parte) O(n3)
- gift wrapping O(n * h) - compararea polară
- Graham scan O(n log n) (chiar O(n) dacă punctele sunt sortate).
- demonstrație că O(n log n) este optim prin reducere la sortare
- pentru un vector V[n], fiecărui element îi asociem punctul x -> P(x, x2)
- definiții: poligon monoton, triangulare
Teme de gândire pentru vacanță
- triangularea unui poligon monoton
- triangularea unui poligon oarecare