【问题标题】:What did I miss? Issue with bubble sort method我错过了什么?冒泡排序方法的问题
【发布时间】:2018-12-08 15:11:29
【问题描述】:

我想对我的作业使用冒泡排序方法,它不起作用,我找不到错误

 void bubbleSort(int arr[], int n) 
   { 
     int i,j; 
     for (i = 0; i < n-1; i++)       
      // last i elements are already in place    
     for (j = 0; j < n-i; j++) 
       if (arr[j] > arr[j+1]) 
         swap(&arr[j], &arr[j+1]); 
  }

有人可以帮助我吗?提前致谢

【问题讨论】:

标签: c sorting bubble-sort


【解决方案1】:

注意第二个循环停止条件应该是 n - i - 1

void bubbleSort(int arr[], int n) 
{ 
    int i, j; 
    for (i = 0; i < n - 1; i++)    
        // Last i elements are already in place    
        for (j = 0; j < n - i - 1; j++)  // **Added n - i - 1**
            if (arr[j] > arr[j+1]) 
                swap(&arr[j], &arr[j+1]); 
}

更多关于冒泡排序:Link

【讨论】:

    猜你喜欢
    • 2020-11-11
    • 1970-01-01
    • 2017-03-02
    • 2020-08-07
    • 2013-03-22
    • 2022-07-16
    • 1970-01-01
    • 1970-01-01
    • 2020-12-19
    相关资源
    最近更新 更多