两个有意思的递归小程序
来源:互联网 发布:魔盒软件手机版 编辑:程序博客网 时间:2024/05/21 12:39
两个有意思的递归小程序
分类: 算法&数据结构2008-11-07 13:08 265人阅读 评论(0) 收藏 举报
面试
最近听到的两道面试、笔试题,感觉挺有意思的:
1。实现库函数strlen,不能使用任何库函数,不能定义任何变量。
2。实现函数strrev,该函数有两个参数,将其中一个字符串逆序放到另一个字符串指针中,同样要求不能使用任何库函数,不能定义任何变量。
采用递归实现,刚好可以满足这两道题的要求:
strrev这个函数,本来要求两个参数都是char *类型的,但我没想到解决办法,倒是用char **可以,不过这样把目的串实参的指针值给改变了,另外最后还得加个'/0'。
当然这两个函数这样写效率不一定高,但采用递归的方法确实挺有意思的。
1。实现库函数strlen,不能使用任何库函数,不能定义任何变量。
2。实现函数strrev,该函数有两个参数,将其中一个字符串逆序放到另一个字符串指针中,同样要求不能使用任何库函数,不能定义任何变量。
采用递归实现,刚好可以满足这两道题的要求:
- void strrev(char **dest, const char *src)
- {
- if(*src == '/0')
- return;
- else
- {
- strrev(dest, src+1);
- *(*dest)++ = *src;
- }
- }
- int strlens(const char *src)
- {
- if(*src != '/0')
- return strlens(++src)+1;
- else
- return 0;
- }
当然这两个函数这样写效率不一定高,但采用递归的方法确实挺有意思的。
- 两个有意思的递归小程序
- 两个有意思的递归小程序
- 两个有意思的递归小程序
- 有意思的小程序
- 有意思的小程序
- CUDA 示例程序reduction中两个有意思的小函数
- 两个关于递归调用的小程序。
- FIGlet -- 有意思的小程序
- 几个有意思的小程序
- java的几个有意思的小程序
- 有意思的小程序之悬挂指针
- 分享一个有意思的小程序!!
- 有意思的递归
- 两个有意思的函数
- 递归小程序_求两个串的最大公共子序列的长度
- C语言比较有意思的几个小程序
- 朋友给的一个有意思Java小程序
- 一个有意思的小程序,考验多线程问题能力
- Chrome开发者工具之结构与样式
- 【python】列表的删除操作
- Struts2 文件上传下载 含下载时中文乱码
- 数组指针和指针数组的区别
- WCF_MSDN官方学习资料
- 两个有意思的递归小程序
- c++学习笔记3
- ffmpeg转码MPEG2-TS的音视频同步机制分析
- java线程
- String常用方法
- Linux 内核编译安装
- poj2251 Dungeon Master
- Delphi 的消息机制浅探(2)
- weblogic简介