Update Scala Solutions
This commit is contained in:
@@ -18,7 +18,7 @@ object BreadthFirstSearch extends App {
|
|||||||
)
|
)
|
||||||
|
|
||||||
def personIsSeller(name: String): Boolean =
|
def personIsSeller(name: String): Boolean =
|
||||||
name.endsWith("y")
|
name.endsWith("z")
|
||||||
|
|
||||||
def search(name: String): Unit = {
|
def search(name: String): Unit = {
|
||||||
var searchQue = mutable.Queue[String]()
|
var searchQue = mutable.Queue[String]()
|
||||||
@@ -26,16 +26,25 @@ object BreadthFirstSearch extends App {
|
|||||||
var searched = Array()
|
var searched = Array()
|
||||||
var seller = false
|
var seller = false
|
||||||
while (!seller) {
|
while (!seller) {
|
||||||
val person = searchQue.dequeue()
|
if (searchQue.isEmpty)
|
||||||
if (!searched.contains(person)){
|
println("No Mango Sellers")
|
||||||
if (personIsSeller(person)) {
|
else {
|
||||||
println(person + " is a mango seller!")
|
val person = searchQue.dequeue()
|
||||||
seller = true
|
if (!searched.contains(person)){
|
||||||
}
|
if (personIsSeller(person)) {
|
||||||
else {
|
println(person + " is a mango seller!")
|
||||||
searchQue ++= graph(person)
|
seller = true
|
||||||
searched + person
|
}
|
||||||
}
|
else {
|
||||||
|
if (searchQue.isEmpty) {
|
||||||
|
println("No Mango Sellers")
|
||||||
|
seller = true
|
||||||
|
}
|
||||||
|
else
|
||||||
|
searchQue ++= graph(person)
|
||||||
|
searched + person
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -47,7 +56,7 @@ object BreadthFirstSearch extends App {
|
|||||||
|
|
||||||
@scala.annotation.tailrec
|
@scala.annotation.tailrec
|
||||||
def helper(searchQue: immutable.Queue[String], searched: Vector[String] = Vector()): String = {
|
def helper(searchQue: immutable.Queue[String], searched: Vector[String] = Vector()): String = {
|
||||||
if (searchQue.isEmpty) return "No Mango sellers"
|
if (searchQue.length > 2) return "No Mango sellers"
|
||||||
val person = searchQue.dequeue._1
|
val person = searchQue.dequeue._1
|
||||||
if (searched.contains(person))
|
if (searched.contains(person))
|
||||||
helper(searchQue.tail)
|
helper(searchQue.tail)
|
||||||
|
|||||||
Reference in New Issue
Block a user