21xrx.com
2024-12-22 20:17:47 Sunday
登录
文章检索 我的文章 写文章
C++数组升序排列:从小到大排序让你的数据更有序
2023-07-12 10:50:10 深夜i     --     --
C++ 数组 升序排列 排序 数据

C++ 是一种广泛应用于计算机编程的编程语言,其数组功能是非常强大的。数组是一种可以存储大量相同类型数据的数据结构。在 C++ 中,通过数组功能可以对数据进行排序、搜索、统计等操作。其中,升序排列是常用的一种操作,可以让数据更有序。下面介绍 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 temp = arr[j];

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

        arr[j + 1] = temp;

      }

    }

  }

}

上述代码中,`arr[]` 表示待排序的数组,`n` 表示数组的大小。使用两层循环遍历数组,第一层循环控制比较的轮数,第二层循环控制每一轮的比较次数。如果前一个元素比后一个元素大,则交换它们的位置。

二、选择排序

选择排序是一种简单的排序算法,其思想是从数组中选择最小的元素,放到数组的起始位置,然后再从剩余的元素中选择最小的元素,放到已排序的元素的末尾。如此往复,直到将整个数组排列为升序。

具体实现方法如下:


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 temp = arr[i];

    arr[i] = arr[min_idx];

    arr[min_idx] = temp;

  }

}

上述代码中,`arr[]` 表示待排序的数组,`n` 表示数组的大小。使用两层循环遍历数组,第一层循环控制待排序的位置,第二层循环在剩余数组中查找最小值,并记录其索引。在查找完后,将最小值与当前的位置进行交换。

总结

C++ 数组升序排列是一种常见的操作,可以让数据更加有序。本文介绍了两种排序算法,即冒泡排序和选择排序,它们都是基于比较的排序算法,时间复杂度为 O(n^2)。在实际应用中,我们可以根据不同的情况选择不同的排序算法,以达到最优化的效果。

  
  

评论区

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