劍指offer刷題記錄 發散思維能力

2021-10-03 01:39:46 字數 510 閱讀 2125

求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(a?b:c)。

需要迭代計算又不讓用迴圈語句,自然想到遞迴呼叫了,但是題目又不讓用if、case等判斷語句,要如何終止遞迴呢?使用&&邏輯運算,如果前乙個為0的話,後面的語句將不再被呼叫,畢竟結果肯定為0;

class

solution

};

寫乙個函式,求兩個整數之和,要求在函式體內不得使用+、-、*、/四則運算符號。

做了劍指offer這兩個題,我的發散思維能力幾乎為零。想到了用位運算但是死活不會。說說最佳解法吧。亦或操作可以實現對兩個數的相加,但是不能表達進製。而與操作可以,當對應位都是1時相與再左移一位即可完成進製操作。因此我們在有進製需求的時候完成兩個數的相加直至沒有進製需求。

class

solution

return result;}}

;

劍指 offer 刷題記錄

任誰都躲不過找工作的問題,好希望能多準備一些時間,奈何時間不等人,每天刷幾道題,並且記錄下來吧 def replacespace s write code here num space 0 new s for i in range len s if i num space 1 for i in ra...

劍指offer刷題記錄

遞迴法 鍊錶的後續遍歷,並用self.k來記錄倒數節點的位置,找到了就返回找到的節點,否則返回none coding utf 8 class listnode def init self,x self.val x self.next none class solution def init self...

劍指offer刷題記錄 綜合

將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入描述 輸入乙個字串,包括數字字母符號,可以為空 輸出描述 如果是合法的數值表達則返回該數字,否則返回0 做這個題目做的真的很煩,最麻煩的就是判斷當前是否越界。可儲存的最大的正數末位為7,可儲存...