首页 > 编程语言 > 详细

数组顺序颠倒——递归方法

时间:2021-09-08 18:03:53      阅读:49      评论:0      收藏:0      [点我收藏+]

递归版

#include<bits/stdc++.h>
using namespace std;
void reverse(int *A, int lo,int hi){
	if(lo<hi)
	
	{
		swap(A[lo],A[hi]);
		reverse(A,lo+1,hi-1);
	}
}
//验证
int main(){
	int A[]={0,1,2,3,4};
	reverse(A,0,4);
	for(int i=0;i<5;i++)
	cout<<A[i]<<" ";
	cout<<endl;
}

迭代版

next:
  if(lo<hi)
  {
	  swap(A[lo],A[hi]);
	  lo++;
	  hi--;
	  goto next;
  }

精简版

while(lo<hi)
{
	swap(A[lo++],A[hi--]);
}

数组顺序颠倒——递归方法

原文:https://www.cnblogs.com/Los1r/p/15240030.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!