Skip to content

Commit bc930b7

Browse files
authored
Merge pull request kelvins#233 from adrianobrito/busca-recursiva
Adicionar BuscaSequencialRecursiva em Scala
2 parents 2381797 + 765818f commit bc930b7

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,8 +402,8 @@ In order to achieve greater coverage and encourage more people to contribute to
402402
</a>
403403
</td>
404404
<td> <!-- Scala -->
405-
<a href="./CONTRIBUTING.md">
406-
<img align="center" height="25" src="./logos/github.svg" />
405+
<a href="./src/scala/RecursiveLinearSearch.scala">
406+
<img align="center" height="25" src="./logos/scala.svg" />
407407
</a>
408408
</td>
409409
<td> <!-- Kotlin -->

src/scala/RecursiveLinearSearch.scala

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import scala.annotation.tailrec
2+
3+
@tailrec
4+
def search(data: List[Int], value: Int, index: Int = 0): Int = {
5+
if (index >= data.size) -1
6+
else if (data(index) == value) index
7+
else search(data, value, index + 1)
8+
}
9+
10+
object Main extends App {
11+
val data: List[Int] = List(9, 2, 6, 1, 3, 5, 4, 7, 8)
12+
val values: List[Int] = List(9, 3, 8, 246)
13+
val results: List[Int] = values.map(v => search(data, v))
14+
15+
values
16+
.zip(results)
17+
.foreach((value, result) => println(s"Value: $value -> Index: $result"))
18+
}

0 commit comments

Comments
 (0)