master > master: code go, py - Annahme in SprungSuche nur eine Idealisierung, keine Notwendigkeit
This commit is contained in:
parent
6d97bcc6db
commit
e9f83317d8
@ -75,7 +75,7 @@ parts:
|
||||
- command: 'algorithm-search-binary'
|
||||
description: 'Seminarblatt Woche 3, Aufgabe 1'
|
||||
inputs: &ref_inputs_sem3_1
|
||||
L: [7, 12, 29, 33, 40, 44, 45, 55, 64, 68, 78, 81, 84, 89, 95, 117, 120, 124, 133, 148, 152, 157, 174, 209, 219, 226, 237, 241, 273, 277, 282]
|
||||
L: [7, 12, 29, 33, 40, 44, 45, 55, 64, 68, 78, 81, 84, 89, 95, 117, 120, 124, 133, 148, 152, 157, 174, 209, 219, 226, 226, 237, 241, 273, 277, 282]
|
||||
x: 101
|
||||
- command: 'algorithm-search-jump'
|
||||
description: 'Seminarblatt Woche 3, Aufgabe 1'
|
||||
|
@ -27,7 +27,8 @@ Inputs: L = Liste von Zahlen, x = Zahl, m = lineare Sprunggröße.
|
||||
|
||||
Annahmen:
|
||||
- L sei aufsteigend sortiert.
|
||||
- L enthält keine Duplikate.
|
||||
- Idealerweise: L enthält keine Duplikate.
|
||||
- Idealerweise: Abstände zw. Elementen nicht uniform.
|
||||
|
||||
Outputs: Position von x in L, sonst −1 wenn x nicht in L.
|
||||
*/
|
||||
|
@ -26,6 +26,7 @@ func preChecks(L []int, _ ...interface{}) error {
|
||||
if !utils.IsSortedListInt(L) {
|
||||
return fmt.Errorf("Ungültiger Input: L muss aufsteigend sortiert sein!")
|
||||
}
|
||||
// NOTE: nicht prüfen, ob Duplikate existieren. Das ist nur eine erwünschte aber keine notwendige Annahme.
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,7 @@ from src.algorithms.methods import *;
|
||||
|
||||
def preChecks(L: List[int], **_):
|
||||
assert L == sorted(L), 'Ungültiger Input: L muss aufsteigend sortiert sein!';
|
||||
assert L == sorted(list(set(L))), 'Ungültiger Input: L darf keine Duplikate enthalten!';
|
||||
## NOTE: nicht prüfen, ob Duplikate existieren. Das ist nur eine erwünschte aber keine notwendige Annahme.
|
||||
return;
|
||||
|
||||
def postChecks(L: List[int], x: int, index: int, **_):
|
||||
@ -46,7 +46,8 @@ def JumpSearchLinear(L: List[int], x: int, m: int) -> int:
|
||||
|
||||
Annahmen:
|
||||
- L sei aufsteigend sortiert.
|
||||
- L enthält keine Duplikate.
|
||||
- Idealerweise: L enthält keine Duplikate.
|
||||
- Idealerweise: Abstände zw. Elementen nicht uniform.
|
||||
|
||||
Outputs: Position von x in L, sonst −1 wenn x nicht in L.
|
||||
'''
|
||||
@ -77,7 +78,8 @@ def JumpSearchExponentiell(L: List[int], x: int) -> int:
|
||||
|
||||
Annahmen:
|
||||
- L sei aufsteigend sortiert.
|
||||
- L enthält keine Duplikate.
|
||||
- Idealerweise: L enthält keine Duplikate.
|
||||
- Idealerweise: Abstände zw. Elementen nicht uniform.
|
||||
|
||||
Outputs: Position von x in L, sonst −1 wenn x nicht in L.
|
||||
'''
|
||||
|
Loading…
x
Reference in New Issue
Block a user