quicksort

    3熱度

    2回答

    def quicksort(mas): if mas: mid = mas[0] menshe = [i for i in mas[1:] if i < mid] bolshe = [i for i in mas[1:] if i >= mid] return quicksort(menshe) + [mid] + quicksort(bo

    0熱度

    1回答

    我遇到問題,我的快速排序功能不斷重新詛咒三個功能的最佳。我不知道它爲什麼這樣做,我需要幫助。我在努力實踐這對於我的編碼類下學期,這是從去年開始的任務,我的朋友有和IM當談到這個錯誤 失去這是我的快速排序功能之一: def quick_sort (alist, function ): if len(alist) <= 1: return alist + [] pivo

    1熱度

    1回答

    這是我實現快速排序的: int choosePivotIndex(int l, int r) { return l + rand() % (r + 1 - l); } void swap(int a[], int l, int r) { int tmp = a[l]; a[l] = a[r]; a[r] = tmp; } int partit

    -5熱度

    1回答

    我看了一個關於快速排序的視頻,但我不明白的代碼: public static void main(String[] args){ int[] array = { 1, 2, 3, 4, 5 }; int left = 0; int right = array.length - 1; for (left = 0; left < right; left++,

    1熱度

    1回答

    我想在C中實現遞歸快速排序,通過使用按位異或操作進行所有交換。這裏是我有這麼遠: //bitwise recursive quicksort void quicksort(int *int_array,int p, int r){ if(p<r){ int q = part(int_array, p, r); quicksort(int_array,p, q

    0熱度

    1回答

    我正在學習關於java中的線程,我試圖使用兩個線程在一個數組上運行QuickSort,但沒有按預期工作。這個想法是在數組的分區後在第一部分上運行一個線程,而第二個線程將在另一部分上運行。我假設使用兩個並行運行的線程可以提高性能,但事實並非如此。經過多次測試後,使用這兩個線程比普通的原始快速排序要差一些。 我不知道什麼似乎是問題。

    0熱度

    2回答

    我一直在使用排序算法,我發現快速排序無法正確使用交換功能沒有臨時變量。我附上了下面的代碼。你可以在swift操場上執行這個代碼,它的編寫速度很快。 This is the link to execute this code online. 請讓我知道你需要的任何其他信息來解決這個問題。如果有人能解釋這一點,我會很感激。 注 - 我已經在交換功能中評論了兩個有點代碼。一個沒有臨時變量,另一個是臨時變

    -2熱度

    1回答

    我正在嘗試使用三個算法的中位數來實現快速排序,並且它失敗了我寫入的與小分區相關的單元測試。我改變了我以前的分區,現在它傳遞用於失敗的試驗之一,但仍然失敗的一個在底部: 我的代碼是: public class QuickSort { static void swap(int[] A, int i, int j) { int tmp = A[i]; A[i] = A

    0熱度

    2回答

    我試圖找到兩個不同大小的排序陣列的中位數。但是有一些情況不起作用,我無法弄清楚爲什麼。我已經在下面列出了我的實現。 我知道網上有類似的解決方案。但是我剛剛開始學習算法,所以我想盡可能多地去做。提前感謝您的幫助! public double median(Point[] arr, int start, int end) { int n = end - start + 1; if

    1熱度

    1回答

    我似乎對正確實施快速排序有點困惑。 如果我想查找QuickSort的所有主軸值,我該在什麼時候停止分割子陣列? QuickSort(A,p,r): if p < r: q = Partition(A,p,r) Quicksort(A,p,q-1) Quicksort(A,q+1,r) Partition(A,p,r): x = A[r]