題目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字以及條件判斷語句(A?B:C)。
解法一:用遞歸,利用&&運算符的特性做。
解法二:用構造函數做。class內含有一個static變量,初始化爲1。一個全局變量sum初始化爲0。在構造函數內部首先sum += i;然後i++。構造一個大小爲n,類型類class的數組,調用構造函數n次。即可獲得sum。
解法三:在遞歸的思想上,利用c++的多態性來當做遞歸return的條件。還利用了連續兩次!!n,將n轉化成1。
微軟,Google面試題 (8) —— 求1+2+...+n
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
[算法系列]遞歸應用——二叉樹(1):二叉樹遍歷詳解解+LeetCode經典題目+模板總結
Lawfree
2020-07-07 05:19:47
每天學習一算法系列(26)(輸入一個整數,求該整數的二進制表達中有多少個1)
yuucyf
2020-07-01 19:46:49
每天學習一算法系列(31)(實現一個隊列,隊列的應用場景爲:一個生產者線程將int 類型的數入列,一個消費者線程將int 類型的數出列)
yuucyf
2020-07-01 19:46:49
每天學習一算法系列(32)(求一個矩陣中最大的二維矩陣(元素和最大))
yuucyf
2020-07-01 19:46:49
算法課作業——拼出緣分(java版)
WaneGi
2020-07-01 18:03:32
八大排序算法-歸併排序
Hist_花透
2020-07-01 05:37:44
八大排序算法-shell 排序
Hist_花透
2020-07-01 05:37:44
八大排序算法-堆排序
Hist_花透
2020-07-01 05:37:44
c++模板---堆
linjiaqingggg
2020-06-30 21:30:41
GeoMesa——概述
似水流年
2020-06-30 11:40:09
數據結構--二叉查找樹
fufengrui
2020-06-28 19:50:18
數據結構--插入排序
fufengrui
2020-06-28 19:50:18
2019年最新最全java實戰視頻教程
alankin
2020-06-28 00:07:16
leetcode108/109 Convert Sorted Array to Binary Search Tree
_Eric_Lan_
2020-06-26 10:52:27