【递归】子串反向——递归

请编写一个递归函数

reverse(char str[], int start, int end )

该函数的功能是将串 str 中下标从 start 开始到 end 结束的字符颠倒顺序。假设 start 和 end 都在合理的取值范围。
只需要编写递归函数 reverse,系统中已经设置好了main函数。

预设代码:

/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */  #include <stdio.h>
#include <stdlib.h>
void reverse( );
int main( )
{   char str[100];  int start, end;  gets(str);  scanf("%d%d", &start, &end);  reverse( str, start, end );  printf("%s\n", str);  return 0;
}  /* PRESET CODE END - NEVER TOUCH CODE ABOVE */

思路

和【递归】回文字符串——递归很想,只要把判断是否一样改成交换位置即可

代码

void reverse(char * str, int start, int end)
{  if(end >= strlen(str))  end = strlen(str) - 1;  if(end - start > 0)  {  char tmp = str[start];  str[start] = str[end];  str[end] = tmp;  return reverse(str, start + 1, end - 1);  }
}

【递归】子串反向——递归相关推荐

  1. java 递归return_java递归和反向递归

    /** * 说明方法描述:将list转为树tree结构 * * @param allRrecords * @return * @time 2016年5月10日 下午6:00:35 * @author  ...

  2. rnn 递归神经网络_递归神经网络rnn的简单解释

    rnn 递归神经网络 Recurrent neural network is a type of neural network used to deal specifically with seque ...

  3. python创建树结构、求深度_数据结构-树以及深度、广度优先遍历(递归和非递归,python实现)...

    前面我们介绍了队列.堆栈.链表,你亲自动手实践了吗?今天我们来到了树的部分,树在数据结构中是非常重要的一部分,树的应用有很多很多,树的种类也有很多很多,今天我们就先来创建一个普通的树.其他各种各样的树 ...

  4. 二叉树的建造、递归与非递归遍历

    #include "stdafx.h" #include <iostream> #include <stack> #include <queue> ...

  5. 二叉树的几种递归和非递归式遍历:

    二叉树的几种递归和非递归式遍历: 1 #include <fstream> 2 #include <iostream> 3 4 using namespace std; 5 6 ...

  6. 全排列(含递归和非递归的解法)

    全排列在近几年各大网络公司的笔试中出现的比较频繁 首先来看看题目是如何要求的(百度迅雷校招笔试题). 用C++写一个函数, 如 Foo(const char *str), 打印出 str 的全排列, ...

  7. C#实现(递归和非递归)快速排序和简单排序

    C#实现(递归和非递归)快速排序和简单排序 本人因为最近工作用到了一些排序算法,就把几个简单的排序算法,想冒泡排序,选择排序,插入排序,奇偶排序和快速排序等整理了出来,代码用C#代码实现,并且通过了测 ...

  8. 分别用递归和非递归方式实现二叉树先序、中序和后序遍历(java实现)

    分别用递归和非递归方式实现二叉树先序.中序和后序遍历 用递归和非递归方式,分别按照二叉树先序.中序和后序打印所有的节点.我们约定:先序遍历顺序 为根.左.右;中序遍历顺序为左.根.右;后序遍历顺序为左 ...

  9. 汉诺塔的改编题(用栈求解,分别递归和非递归)

    限制不能从最左侧的塔直接移动到最右侧,也不能从最右侧直接移动到最左侧,而是必须经过中间,求当塔有N层的时候,打印最优移动过程和最优移动总步数 例如:当塔为两层时,最上层的塔记为1,最下层的塔记为2,则 ...

最新文章

  1. 给定两个数r和n_输出r的n次方 java_滴滴出行2018编程题
  2. 易语言开发c s,Grid++Report报表工具C/S实战项目演练
  3. 教你配CISCO RIP(二)
  4. PCB叠层及相关板材介绍
  5. 今天在看慕课网的java学习路径
  6. Python_正则表达式入门(实例讲解)
  7. 95-140-120-源码-transform-算子iterate
  8. Bailian4039 IP地址转换【进制】
  9. 在chrome中通过getComputedStyle()获取透明度的问题
  10. 年前的面试经历(二)
  11. imnoise2.m
  12. 维基百科(Wikipedia)网址
  13. JS 实现图层模式覆盖效果
  14. 按头安利 好看又实用的相机 单反免抠元素素材看这里
  15. UML类图 自我学习 知识备份 自用 转载自最后的轻语_dd43
  16. MCtalk对话尚德机构:AI讲师,假套路还是真功夫?
  17. Windows NT
  18. HTML 全页面内容自由编辑与 HTML 页面全部黑白风格处理
  19. Sipeed MaixSense:Allwinner R329 (一)官方Debian系统--AIPU的基本使用--图像识别
  20. 【Golang 中的 type A = XXX 与 type A XXXX的区别】

热门文章

  1. JavaScript中立即执行函数实例详解 转载 作者:李牧羊
  2. 理学院购服务器项目协议采购,西安工业大学服务器、电脑协议招标公告
  3. 操作系统入门详解以及Linux介绍
  4. xbox series s 运行游戏显示网络异常 0x80072ee2
  5. 【机器人学习】四自由度机械臂运动学轨迹规划分析+运动空间分析+动力学分析(三维模型+matlab代码)
  6. Unity 制作翻书电子书,外部异步加载千张图片(二)
  7. 上海积分落户计算机水平加分,2019年上海应届生落户打分72分标准拿分策略
  8. 基于ASP.NET的在线论坛系统开发
  9. MT6755 平台手机皮套驱动实现
  10. EasyExcel设置空单元格格式为文本