holyya.com
2025-09-05 00:13:07 Friday
登录
文章检索 我的文章 写文章
C++ 整型数组排序方法
2023-07-03 15:48:07 深夜i     --     --
C++ 整型数组 排序方法

C++ 是一种广泛使用的高级编程语言,拥有大量的数据类型和常见的操作方法,其中整型数组排序是使用 C++ 最常见的操作之一。下面介绍几种常见的整型数组排序方法。

1. 冒泡排序

冒泡排序是一种简单的排序算法,它重复地遍历要排序的数组,每次比较相邻的两个元素,如果顺序错误就交换它们的位置,直到没有任何一对数字需要交换为止。下面是 C++ 编写冒泡排序的代码:


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

  int i, j, temp;

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

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

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

        temp = arr[j];

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

        arr[j+1] = temp;

      }

    }

  }

}

2. 快速排序

快速排序是一种高效的排序算法,它通过选定一个 "基准值",把数组分为比基准值小和比基准值大的两部分,然后分别对这两部分递归排序。下面是 C++ 编写快速排序的代码:


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

  int i = left, j = right, tmp;

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

  while (i <= j) {

    while (arr[i] < pivot)

      i++;

    while (arr[j] > pivot)

      j--;

    if (i <= j) {

      tmp = arr[i];

      arr[i] = arr[j];

      arr[j] = tmp;

      i++;

      j--;

    }

  }

  if (left < j)

    quickSort(arr, left, j);

  if (i < right)

    quickSort(arr, i, right);

}

3. 插入排序

插入排序的基本思想是,将未排序的元素一个个插入到已经排序的数组中。对于每个未排序的元素,它会将它插入到已排序的数组中,并且保证已排序的数组仍然有序。下面是 C++ 编写插入排序的代码:


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

  int i, key, j;

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

    key = arr[i];

    j = i - 1;

    while (j >= 0 && arr[j] > key){

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

      j = j - 1;

    }

    arr[j + 1] = key;

  }

}

以上三种排序算法都是常见的整型数组排序方法,它们各有优缺点,可以根据具体情况选择合适的算法进行排序。对于需要排序的大量数据,可以借助 C++ 的多线程机制,利用多核处理器进行并行计算,提升排序性能。

  
  

评论区

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