quicksort

    1

    2답변

    빠른 정렬의 최악의 경우를 경험하고 싶습니다. 따라서 내림차순으로 배열을 생성합니다. 빠른 정렬을 사용하여 정렬 한 후 배열의 첫 번째 요소는 가비지가되고 때때로 예상대로 0이되는 경우가 있습니다. 첫 번째 요소는 모든 요소의 순서가 슬라이드 쓰레기가되면, 두 번째 요소는 0이되고, 세 번째 요소는 1 명 등이된다 여기 내 코드 : 호어의 파티션 구성표 사

    0

    2답변

    현재 JavaScript의 배열에 quicksort를 구현하려고합니다. 전체 레이아웃이 있지만 어떤 이유로 재귀가 작동하지 않습니다. 그것은 코드의 2 번째 반복을 위해 일한 것으로 보이지만 이후에는 엉망이 된 것 같습니다. 내가 뭘 잘못했는지 모르겠다. function main() { var type = "quicksort" va

    0

    1답변

    아래의 Quicksort 구현을 연구 중입니다 (Coding Interview에서 작성). 파티션 방법에는 두 개의 "왼쪽 < = right"술어가 있습니다 (첫 번째 while 문과 마지막 if 문에서). == 오른쪽으로두면이 인덱스에서 요소를 교환하면 스왑이없는 것과 같아 지므로 비교의 "=="부분을 제거한다고해도 아무런 효과가 없습니다. 그러나이 작업

    1

    1답변

    첫 번째 요소에서 항상 피벗하는 표준 양방향 파티션 QuickSort 알고리즘이 있다고 가정합니다. 그러나 QuickSort의이 작은 변형에서 먼저 첫 번째 요소와 중간 요소를 교환 한 다음 '새로운'첫 번째 요소를 피벗합니다. 내 질문은 이것이 최악의 실행 시간을 바꿀 것인가하는 것입니다. 초기 생각은 각각의 하위 배열에서와 마찬가지로 요소가 서로 상대적

    -1

    1답변

    나는 의사 코드를 받았고 꽤 많이 그것의 양식을 가지고 올바른,하지만 왜 내가 스택 오버플로 Visual Studio에서 빠른 정렬을 실행하려고 매번 스택을 제공하지 않습니다 . 아래는 내가 만든 기능입니다. template <typename T> void quickSort(T list[], int lowerBound, int upperBound) {

    -1

    1답변

    코드를 발견했습니다. 그러나 나는 그것이 어떻게 작동하는지 이해하지 못한다. 필자는 피벗을 알고 있으므로 배열의 중간 요소입니다. 하지만 여기서 피벗은 int pivot = quickSortArray[p]입니다. 여기서 int i = p이므로 p = 0이고 0은 배열 중간이 아니며 설명 할 수 있습니까? public int partition(int p, i

    1

    2답변

    다양한 분포에 대해 테스트 중이며 역순으로 (내림차순) 정렬 된 입력을 입력으로 제공 할 때 분할 오류가 발생합니다. 때로는 역순 정렬 배열에도 잘 작동하며 때로는 거꾸로 정렬 된 배열 (> 100000)에서 세그먼트 오류 오류가 발생합니다. 매우 복잡한 재귀 호출 때문입니다. 재귀 호출 깊이의 한계는 무엇이며 종속 요소는 무엇이며 재귀 프로그램을 작성하는

    0

    2답변

    정렬 문제를 해결하기 위해 연습 문제를 겪고 있었는데이 문제를 보았습니까? 배열을 빨리 정렬하고 console.log(quicksort(inputArray).toString());을 입력하면 나머지 숫자가 끝나지 않습니다. 당신은 다음 작업을 수행 할 때 여기 https://jsfiddle.net/qLyt1yfv/ function quicksort(inpu

    -1

    2답변

    나는 C에서 quicksorting 알고리즘을 쓰고있어 내 터미널에 bus error:10 계속 받고있어. 이 특정 경우에 어떻게 확신 할 지 모르지만 배열에 메모리를 할당해야한다는 것을 이해합니다. 편집 : 나는 더 많은 정보없이 quicksort, partitioning 및 swap 기능 void swap(char* a, char* b){ int t

    -1

    2답변

    quicksort 알고리즘을 실행할 때 문제가 발생했습니다. 오류가 발생하여 문제가 발생한 곳을 찾을 수 없습니다. 누군가가 실수를 지적 할 수 있다면 나는 감사 할 것이다. #include <stdio.h> #include <stdlib.h> void main(){ int arr[] = {10, 7, 8, 9, 1, 5}; int