21xrx.com
2024-11-10 00:35:58 Sunday
登录
文章检索 我的文章 写文章
C++排序及输出
2023-06-30 10:42:40 深夜i     --     --
C++ 排序 输出 算法 数组

C++是一种高级编程语言,拥有丰富的库函数,其中包括了很多可以用来操作数组、排序等功能的函数。今天我们来讲一讲如何使用C++对数组进行排序,并输出排序后的结果。

在C++中,有许多种排序算法,比如冒泡排序、选择排序、插入排序、快速排序等等。这些算法的效率不一,我们可以根据实际需求选择合适的算法。以快速排序为例,下面是具体的代码实现:


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

  if (left >= right) return;

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

  while (i <= j) {

    while (arr[i] < pivot) i++;

    while (arr[j] > pivot) j--;

    if (i <= j) {

      swap(arr[i], arr[j]);

      i++;

      j--;

    }

  }

  quickSort(arr, left, j);

  quickSort(arr, i, right);

}

在这个排序函数中,我们使用了递归的方式将数组不断划分成更小的部分,直到左右指针相遇。在划分过程中,我们先选取一个参照点(pivot),并将数组分为两部分。通过不断交换左右指针所在位置的元素,将小于pivot的元素放在左边,大于pivot的元素放在右边。这样,我们就得到了排好序的数组。

调用这个快速排序函数的代码如下:


int main() {

  int arr[] = 5;

  int n = sizeof(arr) / sizeof(arr[0]);

  quickSort(arr, 0, n - 1);

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

    cout << arr[i] << " ";

  }

  cout << endl;

  return 0;

}

在上面的代码中,我们首先定义一个整型数组,并将其赋初值。然后计算数组的长度,并调用我们的排序函数进行排序。最后,遍历数组将排序后的结果输出到屏幕。

总之,C++中对数组进行排序的方法很多,每个方法各有优缺点。我们需要根据具体情况来选择最合适的排序方法,并且在正确使用的前提下,尽量降低排序算法的时间复杂度,以提高程序效率。

  
  

评论区

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