21xrx.com
2024-12-22 21:32:44 Sunday
登录
文章检索 我的文章 写文章
C++语言常用代码大全
2023-07-05 07:54:29 深夜i     --     --
C++语言 常用 代码 大全

C++作为一种高级编程语言,被广泛运用于计算机化系统中。然而,由于C++语言的复杂性,很多程序员在使用C++时会遇到困难。为了帮助大家更好地理解C++语言,我们在这里介绍一些常用的C++代码。

1. 序列检查

在编写代码时,确保序列是正确的非常重要。以下代码可以帮助你检查一个序列是否已正确排序。


bool is_sorted(int *arr, int n) {

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

    if (arr[i-1] > arr[i])

      return false;

  return true;

}

2. 二分查找

二分查找是一种常用的搜索算法,特别适合用于处理大量数据。以下代码可以帮助你实现二分查找。


int bs(int *arr, int n, int x) {

  int l = 0, r = n-1;

  while (l <= r) {

    int mid = (l+r)>>1;

    if (arr[mid] == x)

      return mid;

    else if (arr[mid] < x)

      l = mid+1;

    else

      r = mid-1;

  }

  return -1;

}

3. 堆排序

堆排序是一种重要的、高效的排序算法,该算法可以帮助你将一个数组或列表按照升序或降序排列。


void heapify(int *arr, int n, int i) {

  int largest = i;

  int l = 2*i + 1;

  int r = 2*i + 2;

  if (l < n && arr[l] > arr[largest])

    largest = l;

  if (r < n && arr[r] > arr[largest])

    largest = r;

  if (largest != i) {

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

    heapify(arr, n, largest);

  }

}

void heap_sort(int *arr, int n) {

  for (int i = n / 2 - 1; i >= 0; i--)

    heapify(arr, n, i);

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

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

    heapify(arr, i, 0);

  }

}

4. 冒泡排序

冒泡排序是一种经典的排序算法,该算法可以帮助你将所有的元素逐个比较并按升序或降序排列。


void bubble_sort(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])

        swap(arr[j], arr[j+1]);

}

5. 选择排序

选择排序也是一种著名的排序算法,它的效率比冒泡排序稍高一些。


void selection_sort(int *arr, int n) {

  int i, j, min_idx;

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

    min_idx = i;

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

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

        min_idx = j;

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

  }

}

6. 插入排序

插入排序是一种简单但高效的排序算法,该算法可以帮助你将一个数组或列表有序排列。


void insertion_sort(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++代码,它们可以帮助你更好地理解C++语言及其功能。当然,C++的功能是非常强大和广泛的,我们只是选取了一些常用代码来介绍。对于初学者来说,如果学的越多,就越能发挥C++的巨大潜力。

  
  

评论区

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