21xrx.com
2024-12-22 20:19:48 Sunday
登录
文章检索 我的文章 写文章
C++数组按大小排序方法
2023-07-06 18:19:18 深夜i     --     --
C++ 数组 排序 大小

C++是一种强大的编程语言,广泛用于各种领域的编程。在C++中,数组是一种常见的数据类型,用来存储一组相同类型的数据。当我们需要对数组中的数据按照大小进行排序时,可以使用以下方法。

1. 冒泡排序

冒泡排序是一种简单的排序算法,它比较相邻的元素并交换它们,把最大的元素移动到最后。重复这个过程直到数组按照大小排好序。

C++ 代码示例:


void bubblesort(int arr[], int n){

  for(int i=0; i < n-1; i++){

    for(int j=0; j < n-i-1; j++){

      if(arr[j] > arr[j+1]){

        int tmp = arr[j];

        arr[j] = arr[j+1];

        arr[j+1] = tmp;

      }

    }

  }

}

2. 快速排序

快速排序是一种高效的排序算法,它使用分治法的思想,将数组分成两个子数组,一个子数组的元素都比另一个子数组的元素小。重复这一过程直到所有子数组都变成单个元素,最终将所有元素合并成一个有序的数组。

C++ 代码示例:


void quicksort(int arr[], int left, int right){

  if(left >= right)

    return;

  

  int pivot = arr[(left + right) / 2];

  int i = left, j = right;

  while(i <= j){

    while(arr[i] < pivot){

      i++;

    }

    while(arr[j] > pivot)

      j--;

    

    if(i <= j){

      int tmp = arr[i];

      arr[i] = arr[j];

      arr[j] = tmp;

      i++;

      j--;

    }

  }

  quicksort(arr, left, j);

  quicksort(arr, i, right);

}

3. 选择排序

选择排序是一种简单的排序算法,它每次选择最小的元素,将其放在已排序的数组的末尾。重复这个过程直到整个数组都按照大小排好序。

C++ 代码示例:


void selectionsort(int arr[], int n){

  for(int i=0; i < n-1; i++){

    int min_idx = i;

    for(int j=i+1; j < n; j++){

      if(arr[j] < arr[min_idx])

        min_idx = j;

      

    }

    int tmp = arr[i];

    arr[i] = arr[min_idx];

    arr[min_idx] = tmp;

  }

}

以上是三种常见的C++数组按大小排序方法,每种算法都有其优缺点。开发者可以根据实际需求选择适当的算法进行排序。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复