[剑指offer][JAVA]面试题第[64]题[求1+2+…+n][逻辑运算符]
生活随笔
收集整理的這篇文章主要介紹了
[剑指offer][JAVA]面试题第[64]题[求1+2+…+n][逻辑运算符]
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
【問題描述】[中等]
求 1+2+...+n ,要求不能使用乘除法、for、while、if、else、switch、case等關(guān)鍵字及條件判斷語句(A?B:C)。輸入: n = 3 輸出: 6【解答思路】
1. 遞歸(不合符題意)
時(shí)間復(fù)雜度:O(N^2) 空間復(fù)雜度:O(N)
2. 邏輯運(yùn)算符與遞歸
時(shí)間復(fù)雜度:O(N) 空間復(fù)雜度:O(N)
3. 迭代(不合符題意)
循環(huán)必須使用 while 或 for
時(shí)間復(fù)雜度:O(N) 空間復(fù)雜度:O(1)
4. 高斯求和公式(不合符題意)
高斯求和必須使用 乘除法
時(shí)間復(fù)雜度:O(1) 空間復(fù)雜度:O(1)
【總結(jié)】
1.邏輯運(yùn)算符短路效應(yīng)
2. 思路往往從暴力開始,到常規(guī)做法到逐步優(yōu)化
3. Java中運(yùn)算符優(yōu)先級順序
轉(zhuǎn)載鏈接:https://leetcode-cn.com/problems/qiu-12n-lcof/solution/mian-shi-ti-64-qiu-1-2-nluo-ji-fu-duan-lu-qing-xi-/
總結(jié)
以上是生活随笔為你收集整理的[剑指offer][JAVA]面试题第[64]题[求1+2+…+n][逻辑运算符]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从运维角度浅谈MySQL数据库优化
- 下一篇: 《SQL初学者指南(第2版)》——2.4