【问题标题】:Checking if array isSorted using Recursion in c++在c ++中使用递归检查数组是否已排序
【发布时间】:2022-06-10 19:20:38
【问题描述】:

在下面的代码中,我试图检查数组是否使用递归按升序排序;但有一些疑问:

  1. 我不明白为什么我们使用 arr[0] 和 arr[1] 来代替使用 arr[i] 和 arr[i+1]。
  2. 我明白为什么我们会传递 arr+1,但为什么我们要使用 size-1 来减小数组的大小?这不应该导致数组的第 n 部分减少吗?
bool isSorted(int *arr, int size){
  if(size == 0 || size == 1){
    return true;
  }
  //compare two adjacent elements and reduce the size
  if(arr[0] > arr[1]){
    return false;
  }

  bool ans = isSorted(arr+1, size-1);
  return ans;
}

【问题讨论】:

  • 一定要用递归吗?

标签: c++ arrays recursion


猜你喜欢
  • 2019-03-11
  • 2021-04-15
  • 2012-04-08
  • 2018-04-10
  • 1970-01-01
  • 2016-06-29
  • 2020-06-04
  • 2012-07-22
  • 1970-01-01
相关资源
最近更新 更多