48 lines
1 KiB
Markdown
48 lines
1 KiB
Markdown
# Go Fibonacci
|
|
|
|
Naive rekursive Fibonacci-Implementierung — korrekt, aber exponentiell langsam.
|
|
`fib(45)` dauert mehrere Sekunden; `fib(50)` läuft praktisch nicht durch.
|
|
|
|
## Aktueller Stand
|
|
|
|
```
|
|
main.go fib(n) — rekursiv, O(2^n)
|
|
main_test.go TestFib mit 5 Tabellen-Tests (alle grün)
|
|
```
|
|
|
|
## Demo 1: `/optimize --interactive`
|
|
|
|
```
|
|
/optimize "Ersetze die naive Rekursion durch Memoization.
|
|
fib(50) soll in unter 1ms abgeschlossen sein.
|
|
Bestehende Tests müssen weiterhin grün bleiben." \
|
|
--test-cmd "go test ./..." --interactive
|
|
```
|
|
|
|
Nach dem ersten PASS hält pi-coder im **interaktiven Checkpoint** an.
|
|
Hier kann ein Zusatzauftrag erteilt werden:
|
|
|
|
```
|
|
/continue "Gib zusätzlich die Berechnungszeit in Mikrosekunden aus."
|
|
```
|
|
|
|
Oder einfach bestätigen:
|
|
|
|
```
|
|
/continue
|
|
```
|
|
|
|
## Demo 2: Abschluss mit `/shipit`
|
|
|
|
```
|
|
/shipit
|
|
```
|
|
|
|
Der Judge prüft nochmals explizit auf Produktionsreife und gibt SHIP oder NO-SHIP zurück.
|
|
|
|
## Manueller Test
|
|
|
|
```bash
|
|
go test ./...
|
|
go run main.go
|
|
```
|