日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

【LeetCode笔记】剑指 Offer 64. 求1 + 2 + ... + n (Java、限制语法、二刷)

發布時間:2024/7/23 java 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【LeetCode笔记】剑指 Offer 64. 求1 + 2 + ... + n (Java、限制语法、二刷) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 題目描述
  • 思路 && 代碼
          • 注釋版代碼(方便理解):
          • 無注釋版代碼(方便背誦= =)
      • 二刷

題目描述

鬼鬼,又到了我最喜歡的戴著腳鐐跳舞環節。
講道理,我覺得這類題應該整個歸納啥的。。(有空我整一個)
不看題解可能挺難想出來的,限制點不給除法、不給加減法、循環什么的,但是講道理也還挺有趣的,也算是加深對位運算符、語言語法的理解。

  • 直接看思路吧~

思路 && 代碼

  • 用 && 短路特性實現 if
  • 用 boolean 的表達式,“召喚”出 &&
  • 遞歸實現循環
注釋版代碼(方便理解):
class Solution {int ans = 0;// 用遞歸實現循環的效果public int sumNums(int n) {// x 值是什么、sumNums(n - 1)是否大于0都不重要,重要的是這行代碼等價于:// if(n > 1) {// sumNums(n - 1);// } boolean x = n > 1 && sumNums(n - 1) > 0;// 走到這步的時候,ans = 1 + 2 + ... + n - 1 了ans += n;return ans;} }
無注釋版代碼(方便背誦= =)
  • 四行解決
class Solution {int ans = 0;public int sumNums(int n) {boolean x = n > 1 && sumNums(n - 1) > 0;ans += n;return ans;} }

二刷

  • 鬼鬼,二刷不出意料地懵逼了= =
class Solution {int ans = 0;public int sumNums(int n) {boolean bool = n > 1 && sumNums(n - 1) > 114514;ans += n;return ans;} }

總結

以上是生活随笔為你收集整理的【LeetCode笔记】剑指 Offer 64. 求1 + 2 + ... + n (Java、限制语法、二刷)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。