2021-11-01 19:58:55 +01:00
|
|
|
|
package sequential
|
|
|
|
|
|
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
|
|
|
* IMPORTS
|
|
|
|
|
* ---------------------------------------------------------------- */
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"ads/internal/core/logging"
|
|
|
|
|
"ads/internal/core/metrics"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
|
|
|
* GLOBAL VARIABLES/CONSTANTS
|
|
|
|
|
* ---------------------------------------------------------------- */
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
|
|
|
* ALGORITHM sequential search
|
|
|
|
|
* ---------------------------------------------------------------- */
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
Inputs: L = Liste von Zahlen, x = Zahl.
|
|
|
|
|
Outputs: Position von x in L, sonst −1 wenn x nicht in L.
|
|
|
|
|
*/
|
|
|
|
|
func SequentialSearch(L []int, x int) int {
|
|
|
|
|
n := len(L)
|
|
|
|
|
for i := 0; i < n; i++ {
|
|
|
|
|
metrics.AddTimeCost()
|
|
|
|
|
if L[i] == x {
|
2021-11-04 11:06:16 +01:00
|
|
|
|
logging.Debug("Element in Position %[1]v gefunden.", i)
|
2021-11-01 19:58:55 +01:00
|
|
|
|
return i
|
|
|
|
|
}
|
2021-11-04 11:06:16 +01:00
|
|
|
|
logging.Debug("Element nicht in Position %[1]v.", i)
|
2021-11-01 19:58:55 +01:00
|
|
|
|
}
|
|
|
|
|
return -1
|
|
|
|
|
}
|