面试题 46 1+ 2+3+...+n】的更多相关文章

class Temp{ public: Temp(){ ++N; sum+=N; } static void Reset(){ N = ; sum = ; } static int getSum(){ return sum; } private: static int N; static int sum; }; ; ; int sum(int n){ Temp::reset(); Temp * a = new Temp[n]; delete []a; return Temp::getSum();…
题目:求1+2+…+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字以及条件判断语句(A?B:C). 通常求1+2+…+n除了用公式n(n+1)/2之外,无外乎循环和递归两种思路.由于已经明确限制for和while的使用,循环已经不能再用了.同样,递归函数也需要用if语句或者条件判断语句来判断是继续递归下去还是终止递归,但现在题目已经不允许使用这两种语句了. 我们仍然围绕循环做文章.循环只是让相同的代码执行n遍而已,我们完全可以不用for和while达到…
题目: 求1+2+3+...+n,要求不能使用乘除法,for,while,if,else,switch,case等关键字及条件判断语句(a?b:c). 思路: 1.构造函数 在类中定义静态成员变量N和sum,在构造函数中++N,sum+=N:如此一来,创建n个该类型的实例,就会调用n次构造函数,对应的静态变量也就随着更新. 2.虚函数 使用递归时,既然不能再一个函数中判断是不是终止递归,那么不妨定义两个函数,一个函数充当递归函数,一个负责处理递归的结束条件: 需要解决的问题就是如何在两个函数中二…
题目:求1+2+...+n,要求不能使用乘除法.for.while.if.else.swithc.case等关键字及条件判断语句(A?B:C). 解法一:利用构造函数求解 class Temp { public: Temp() { ++N; Sum+=N; } static void Reset() { N = ; Sum = ; } static unsigned int GetSum() { return sum; } private: static unsigned int N; stat…
问题描述 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 "a" ,1 翻译成 "b",--,11 翻译成 "l",--,25 翻译成 "z".一个数字可能有多个翻译.请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法. 示例 1: 输入: 12258 输出: 5 解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi&quo…
各位程序猿:         <剑指Offer>一书源自该书作者何海涛坚持更新与编写的博客(http://zhedahht.blog.163.com/),该博客收集整理了大量如微软.Google等知名IT企业的经典面试题.<剑指Offer>一书在此基础上选取了50个典型的程序员面试题,从基础知识.代码质量.解题思路.优化效率和综合能力五个方面系统整理了影响面试的5个要点,难度适中,讲解清晰,非常适合程序猿用于准备求职面试. 目前国内外越来越多公司将在线机试的方式引入求职招聘中,或者…
面试题 1  什么是 CTS.CLS 和CLR 公共语言运行库(CLR)是一个CLI 的一个实现,包含了.NET 运行引擎和符合 CLI 的类库. 通用类型系统(CTS)包含在微软公司提交的 CLI 规范,定义了一个可以在 CLR 上运行的类型规范. 公共语言规范是 CTS的一个子集,定义了所有面向.NET 的程序所需要符合的最小规范集. 面试题 2   CLR 技术和 COM技术的比较 CLR 和 COM 都定义了组件间交互的规范.COM 并没有定义如何描述组件间的依赖性,并且由于其严格的物理…
<剑指Offer>是很多程序员面试前要看的书,但里面的算法都是基于C++实现的,最近用了三周左右时间,用Python完成了里面几乎所有的算法题,由于时间以及个人水平均有限,或许会有部分问题没有发现,希望大家发现后能指出,在此感谢大家!也希望我写的东西能对大家有一点帮助.所有源代码请在这里获取. Python-Offer的主要特点简介如下: 所有题目按照书中章节排列,便于查询: 每个题目单独一个文件,文件可以直接运行,便于测试以及查看结果: 作为2的补充,对于二叉树和单链表这种类型的题目,文件中…
/** * 面试题46:求1+2+...+n * 求1+2+3+...+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C). */ public class _46_n_sum { public static void main(String[] args) { Solution46 solution46 = new Solution46(); int sum=solution46.Sum_Solution(100); Syst…
此系列为面试笔试题的视频讲解,以下均为超链接,点击即可进入每个知识点的讲解. Java面试题01.面试的整体流程 Java面试题02.java的垮平台原理 Java面试题03.搭建一个java的开发环境 Java面试题04.java中int占几个字节 Java面试题05.java面向对象的特征 Java面试题06.装箱和拆箱 Java面试题07.==和equals的区别 Java面试题08.String Java面试题09.讲一下java中的集合 Java面试题10.ArrayList 和Lin…