Wissensfrage 25.02.2010

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Wissensfrage 25.02.2010
a)richtig
b)falsch
c) i) O(n³) ii)O(Wurzel(n)) iii) O(Wurzel(n)*log n)
d)1
e)falsch
f)falsch
g)bucketsort & mergesort
h)richtig
i)falsch
j)O(1)
k)O(n)

mein Vorschlag :smiley:


hab ich genauso bis auf die d).
Bei der d) hab ich die dritte Antwort genommen, da die erste meiner meinung nach keinen sinn macht, da es genau darum geht, zu zeigen P ⇒ Q.
Bei der zweiten fehlt, zu zeigen, dass I nach jedem Schleifendurchlauf gilt.


Hab ich auch so wie Sleepy10.


same here :smiley:


haha stimmt, muss ich irgendwie verwechselt haben, wurde schließlich in einen anderen thread schon behandelt :wink:


Sleepy10 hat recht bei d) ist die dritte Antwort richtig. Aber Begründung ist einfach die folgende.

Für die Partielle Korrektheit muss man genau das beweisen was bei der dritten Antwort steht.

Die erste Antwort kann man gleich ausschließen, da V eine Terminierungsfunktion darstellt. Sie ist nur zum Beweis einer Totalen Korrektheit notwendig. Und die zweite erfüllt auch nicht die Vorraussetzungen des Beweises für die partielle Korrektheit.


Und bei e) hab ich auch am Anfang als falsch angekreuzt aber unser Tutor meinte, dass das richtig ist. Könnte da jmd. vllt. eine Begründung angeben??

Ich würde da einfach sagen, in der Klasse Unter müssen nicht alle Methoden neu deklariert werden, weil die Klasse Unter von der Ober - Klasse erbt .

Kann man das als Grund angeben??


Ich würde sagen weil Unter auch eine abstrakte Klasse ist :wink:


Genau, da Unter abstrakt ist, darf es weiterhin abstrakte Methoden haben; somit ist falsch hier richtig.

Anders waere das, falls es Unter nicht abstrakt ist, dann muessten alle abstrakten Methoden implementiert werden.


Wissenfragen 06.08.2009

kann mir jemand sagen wie ist die lösung vom:

b/

d/

f/

g/

i/


@reebok: Wahrscheinlich hat euer Tutor das erste “abstrakt” übersehen.

Im Zweifel gilt: selbst ausprobieren (funktioniert):

[code=java]
abstract class Ober {
abstract public void foo(int a);
abstract public void bar(int b);
}

abstract class Unter extends Ober {
public void foo(int x) { System.out.println(“this is Unter.foo(” + x + “)!”); }
// kein bar()!
}

public class Test extends Unter {
public void bar(int x) { System.out.println(“this is Test.bar(” + x + “)!”); }

public static void main(String[] argv) {
    Test obj = new Test();
    obj.foo(1);
    obj.bar(2);
}

}[/code]


Wissenfragen 06.08.2009 :

b) . O(log n)
. O(n²)
. O(2ⁿ)
d) falsch
f) richtig
g) falsch
i) richtig
:wink:


danke


Also ich habe da folgende Antworten :

b) f1(n) = > O(log2n)
f2(n) => O(n^2)
f3(n) => O (2^n)

d) falsch

f) richtig

g) falsch

i) richtig siehe Dijkstra

EDIT : Tuchkata war schneller :slight_smile: