Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Prüfungen im Bachelor-Studium (1. - 5. Semester) » algoks » Forendiskussionen (Übersicht)
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
pruefungen:bachelor:algoks:loesungws13 [22.07.2015 08:45] – Fertu | pruefungen:bachelor:algoks:loesungws13 [18.07.2016 12:58] (aktuell) – ThiloK | ||
---|---|---|---|
Zeile 14: | Zeile 14: | ||
**b)** O(n³) | **b)** O(n³) | ||
- | **c)** | + | **c)** |
**d)** O(n log n) | **d)** O(n log n) | ||
Zeile 24: | Zeile 24: | ||
**g)** O(h²) | **g)** O(h²) | ||
- | **h)** O(h^5) | + | **h)** O(h^4) |
Zeile 74: | Zeile 74: | ||
< | < | ||
- | x_1 = |-8| | + | x_1 = | 8| |
- | | 4| | + | |-4| |
- | | 0| | + | | 2| |
- | |-8| | + | | 7| |
</ | </ | ||
Zeile 143: | Zeile 143: | ||
**f)** | **f)** | ||
< | < | ||
- | FOR(i,1,dim-1) | + | filter |
- | FOR(j,1,dim-1) | + | { |
- | dst.setValue(i-1, j-1, | + | double filter[3][3] = |
- | | + | { |
- | +src.getValue(i,j-1) | + | {0,1,0}, |
- | +src.getValue(i+1,j) | + | {1,-4,1}, |
- | | + | {0,1,0} |
- | -4src.getValue(i,j)); | + | }; |
+ | |||
+ | for(int x=1;x<src.getDim()-1; x++) | ||
+ | { | ||
+ | for(int y=1;y<src.getDim()-1; y++) | ||
+ | { | ||
+ | double newValue=0; | ||
+ | for(int i=0;i<3;i++) | ||
+ | { | ||
+ | for(int | ||
+ | { | ||
+ | newValue+=src.getValue(x-1+i,y-1+j)*filter[j][i]; | ||
+ | } | ||
+ | } | ||
+ | dest.setValue(x-1,y-1, | ||
+ | } | ||
+ | } | ||
+ | } | ||
</ | </ | ||
**g)** | **g)** | ||
< | < | ||
- | FOR(i,1,dim-1) | + | filter |
- | FOR(j,1,dim-1) | + | { |
- | dst.setValue(i-1, j-1, | + | Image tmp(src.getDim()); |
- | | + | double filterX[3]={3,10,3}; |
- | -src.getValue(i,j+1) | + | double filterY[3]={1,0,-1}; |
- | +3*src.getValue(i-1,j) | + | for(int x=0; |
- | +3*src.getValue(i+1,j) | + | { |
- | | + | for(int y=1; |
+ | { | ||
+ | double newValue=0; | ||
+ | for(int i=0; | ||
+ | { | ||
+ | newValue+=src.getValue(x,y-1+i)*filterY[i]; | ||
+ | } | ||
+ | tmp.setValue(x,y-1,newValue); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | for(int x=1;x<src.getDim()-1;x++) | ||
+ | { | ||
+ | for(int y=1;y<src.getDim()-1;y++) | ||
+ | { | ||
+ | double newValue=0; | ||
+ | for(int i=0;i<3;i++) | ||
+ | { | ||
+ | newValue+=src.getValue(x-1,y-1+i)*filterX[i]; | ||
+ | } | ||
+ | tmp.setValue(x-1,y-1, | ||
+ | } | ||
+ | } | ||
+ | } | ||
</ | </ | ||
Zeile 182: | Zeile 222: | ||
**c)** | **c)** | ||
- | |||
- | //! mit vorsicht zu geniessen da keine Ahnung !// | ||
m_1 = 0 | m_1 = 0 | ||
Zeile 190: | Zeile 228: | ||
**d)** | **d)** | ||
- | |||
- | // ka // | ||
**e)** | **e)** | ||
- | alpha = 1/3 | ||
- | |||
- | beta = 3/4 | ||
f_p = 8 | f_p = 8 | ||
Zeile 202: | Zeile 235: | ||
**f)** | **f)** | ||
- | p = 1/4 | + | rho = 1/4 |
- | q = 1/2 | + | sigma = 1/2 |
- | t = 1/4 | + | tau = 1/4 |
- | f_p = 8 | + | f_p = 6 |
==== Aufgabe 6 - Bezier-Kurven ==== | ==== Aufgabe 6 - Bezier-Kurven ==== | ||
Zeile 214: | Zeile 247: | ||
//meine Sexistische Bildbeschreibung// | //meine Sexistische Bildbeschreibung// | ||
- | //! i have no idea what i am doing here, schlimmste Bezier-Aufgaben den ich so begegnet bin !// | ||
**a)** | **a)** | ||
- | Schaut wie Busen (von oben) aus. :) | + | Schaut wie ein Busen (von oben) aus. :) |
**b)** | **b)** | ||
- | Busen der links und rechts ausbuechst :) | + | <del>Busen der links und rechts ausbuechst :)</ |
+ | Ist leider falsch, da das die Eigenschaft "BK liegt in der konvexen Huelle des Kontrollpolygons" | ||
**c)** | **c)** | ||
Zeile 280: | Zeile 313: | ||
**c)** | **c)** | ||
+ | [[https:// | ||
< | < | ||
- | 1/18 * A | + | A_1 = u_1 * sigma_1 * v1^T |
- | A = | 6 6 6 -6 | | + | A_1 = |
- | | 24 24 24 -24 | | + | 1/3 * | 1 1 1 -1 | |
- | | 48 48 48 -48 | | + | | 4 4 4 -4 | |
+ | | 8 8 8 -8 | | ||
</ | </ | ||
Zeile 294: | Zeile 329: | ||
x_1 = (9/8 3) ^T | x_1 = (9/8 3) ^T | ||
- | s_0 = (1 0) | + | s_0 = (1 0) |
**b)** | **b)** | ||
Zeile 310: | Zeile 345: | ||
**d)** | **d)** | ||
- | (1 0)^T | + | Vorgehensweise: |
+ | |||
+ | Y = (0, 4)^T | ||
+ | |||
+ | Es muss folgendes LGS geloest werden: 0 * x_1 + 4 * x_2 = 0 | ||
+ | |||
+ | (1 0)^T ---> x_1 kann beliebig gewaehlt werden. | ||
+ | |||
+ | < | ||
+ | [5/4,13/4] T</ | ||
+ | |||
+ | Es gibt keine Aufgabe 8e) | ||
+ | |||
+ | ==== Aufgabe 9 - Median Cut ==== | ||
+ | |||
+ | < | ||
+ | |||
+ | 1. Bounding Box zeichnen: Ein Rechteck zeichnen, bei dem alle Punkte innerhalb der Box liegen. Die aeussersten Punkte markieren dabei die Grenzen des Rechtecks. | ||
+ | |||
+ | 2. Bounding Box halbieren, dass in etwa gleich viele Punkte in der oberen/ | ||
- | ==== Aufgabe 8 - Median Cut ==== | + | 3. Das wird rekursiv fuer jede weitere Box gemacht (hier 3x, da nur 3 Schritter verlangt sind). |
- | Median Cut konnte ich aus den Vorlesungsfolien nicht nachvollziehen. | + | {{: |