Апачская искра сортировки VS Quicksort - PullRequest
0 голосов
/ 06 сентября 2018

Я кодировал отдельную быструю сортировку и отдельную распределенную сортировку в Apache spark для сортировки некоторых слов.

Полагаю, Apache spark также использует быструю сортировку / Tim-Sort в качестве алгоритма сортировки по умолчанию.

Я записал их время работы.

Итак, вопрос в том, что заставляет Apache выполнять сортировку быстрее, чем Quicksort самостоятельно? Вот искровой код, который сортирует слова по длине

val A=lowercaseWords.sortBy(x=>x.length(),true,10)

а вот и отдельная быстрая сортировка

    def QuickSort(lst:List[String]):List[String]=lst match{

    case Nil =>lst
    case h::Nil=>lst
    case pivot:: t=>
        val(less,greater)=t.partition(_< pivot)
        QuickSort(less)::: (pivot::QuickSort(greater))

  }

}

Я пытаюсь найти фактор X такой, что O (DisSort) = X O (QuickSort)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...