[面试算法]减少中间变量的面试题
来源:互联网 发布:高考软件文科 编辑:程序博客网 时间:2024/05/22 06:57
1.利用数据源的特点,例如首位,空位等,暂时当临时变量使用。
2.如果需要中间变量做标志,可以考虑将数据源改变符号等针对数据源特点让数据源暂时做标志。
例如:数据源都是正数,那么取反就是一种标志。
3.利用递归,递归是开辟隐式存储空间。
例如:
unsigned int mystrlen(const char *str)
{
if (str==NULL) return 0;
if (*str != 0)
return mystrlen(++str) + 1;
else
return 0;
}
递归
出递归后+1
4.利用数学公式
例如:自然数求和公式
#1 Sn = n * (n + 1) / 2
#2 Smn=(n+m)(n-m+1)/2
5.异或交换、加减交换
void swap(int &a,int &b)
{
if(a==b) return; //当传入的a和b是同一个数(&a==&b)时候会有缺陷
}
- [面试算法]减少中间变量的面试题
- 面试题三 C/C++面试秘笈 查找单链表的中间元素 --程序员面试题
- 一道面试题——不用中间变量交换两个整型变量的值
- 面试题 不使用中间变量交换两个字符
- c面试题:不用中间变量,完成数值交换!
- java面试题之----无中间变量实现交换数字
- Maria840js面试题:不使用中间变量,交换int型的 a, b两个变量的值
- 算法与数据结构面试题(11)-一次遍历得到链表的中间节点
- Java算法面试题(002) 如何通过一次迭代找到LinkedList的中间元素
- 腾讯面试题:查找单链表的中间节点
- 面试题——查找单链表的中间节点
- [算法面试] 25道常见算法面试题
- 面试题上的算法
- 百度的算法面试题
- 最近面试的一些面试题
- 初次面试必须搞定的面试题
- 面试时总结的面试题
- 面试Android工程师遇到的面试题
- 基本BP算法的实例----蚊子的分类
- 美丽的句子
- Boost智能指针——weak_ptr
- 从程序员到项目经理:认识项目经理
- 使用log4j记录日志
- [面试算法]减少中间变量的面试题
- 线段树(单点更新)
- 数据结构与算法实验题-战争来了
- 前Google人谈团队管理:针对不同员工的情境管理法和如何选择合理的团队规模
- panel 显示winform
- php 将对象转数组
- 职场菜鸟感想
- 东软实训推荐面试问题5:你对工作的期望与目标何在?
- apache-nutch-1.7-src.tar.gz 解压编译时无法从资源库下载jar包的问题