C++面试3(编程)
来源:互联网 发布:网络态势感知 佛法 编辑:程序博客网 时间:2024/05/16 08:21
1.如何判断一个单链表是有环的?(注意不能用标志位,最多只能用两个额外的指针)
答:判断一个单链表是否有环最简单的做法是定义两个指针,一个指针每次递增一步,另一个指针每次递增两步,如果是有环的,那么两者必然会重合,反之亦然。
代码如下:
bool check(const node* head){if (head == NULL){return false;}node* low=head;node* fast=head;while ((low->next != NULL) && (fast->next->next != NULL)){low = low->next;fast = fast->next->next;if (low == fast){return true;}}return false;}2.斐波那契数列,1、1、2、3、5、8......编写程序求第十项,可用递归?
答:可以用递归的方式。f(n) = f(n-1) + f(n-2);
代码如下:
int Phe(int n){if (n == 1 || n == 2){return 1;}return (Phe(n-1)+Phe(n-2));}3.写一个函数,将一个字符串的\t都转换成4个空格?
答:代码为:
void ReplaceTab(char* strDst,const char* strSrc){assert(strSrc != NULL);while (*strSrc != '\0'){if (*strSrc == '\t'){*strDst++ = ' ';*strDst++ = ' ';*strDst++ = ' ';*strDst++ = ' ';}else*strDst++ = *strSrc;strSrc++;}}
0 0
- C++面试3(编程)
- C/C++面试编程题
- 常见的C语言面试编程题(二)
- 常见的C语言面试编程题(三)
- C语言笔试面试常见编程题目(更新中)
- 面试试题(编程)
- 一个C语言面试编程题
- 【编程语言】C/C++面试问题
- 《C编程专家》:程序员面试(附2)
- C/C++笔试面试(3)
- C面试宝典-(程序题)3
- C面试题目3
- C面试题目3
- c面试3-转
- 技术面试(C++)
- C/C++面试(3)——矩阵编程题(模拟法)
- java面试编程总结3
- 面试编程题(一)
- (一)源码目录概述
- 提升SQLite数据插入效率低、速度慢的方法
- 【剑指offer】替换空格(把一个空格替换为三个字符)
- 《小亚和小信》别想害我的手机变成人质!
- [从头学python] 第03节 让我们来学习math
- C++面试3(编程)
- Html未加载完成时实现动态加载效果
- EBS相关的链接,便于以后查询使用
- iOS 开发 入门:真机测试
- Hadoop-2.5.0-cdh5.3.2 HA 安装
- public protected 默认 private
- Halcon-第1课-基本语法
- 第13周项目1-Prim算法的验证
- sqlite3使用简介