不用+、-、×、÷對兩個數求和
題目:不用+、-、×、÷對兩個整數求和。
思路:
主要分成3步:
第一步不考慮進位,對每一位相加。0加0與1加1的結果都0,0加1與1加0的結果都是1。我們可以注意到,這和異或的結果是一樣的。對異或而言,0和0、1和1異或的結果是0,而0和1、1和0的異或結果是1。
接著考慮第二步進位,對0加0、0加1、1加0而言,都不會產生進位,只有1加1時,會向前產生一個進位。此時我們可以想象成是兩個數先做位與運算,然後再向左移動一位。只有兩個數都是1的時候,位與得到的結果是1,其餘都是0。
第三步把前兩個步驟的結果相加。相當於輸入前兩步驟的結果來遞迴呼叫自己。
int addWithoutArithmetic(int num1,int num2){
if(num2 == 0)
return num1;
int XORresult = num1 ^ num2;
int carry = (num1 & num2)<<1;
return addWithoutArithmetic(XORresult,carry);
}
相關推薦
不用+、-、×、÷對兩個數求和
題目:不用+、-、×、÷對兩個整數求和。 思路: 主要分成3步: 第一步不考慮進位,對每一位相加。0加0與1加1的結果都0,0加1與1加0的結果都是1。我們可以注意到,這和異或的結果是一樣的。對異或而言,0和0、1和1異或的結果是0,而0和1、1和0的異或
不用temp,對兩個數的值進行互換
如: let a = 1,b=2; a的二進位制: 0001 b的二進位制: 0010 利用異或運算的規律:兩個運算元的位中,相同返回0,不同相返回1 a = a^b;//now a = 0011 b = b^a;//a: 0011, b:0010, now b:0
Tp5.0 一個form表單對兩個數表(無關聯)的內容進行更新
呃呃呃呃呃,這個筆記做的有點想罵人,因為本來是一個很簡單的操作,卻因為我手冊沒有讀熟,基礎不夠紮實,導致了困擾我好久。話不多說 先上圖: 一個form 表單裡面的資料是從兩個資料表裡用ajax面拿出來的(至於咋拿的,上一次筆記有寫),這時對錶單資料進行改動,然後重新存入資料庫。。。。 提
Shell 腳本《兩個數求和》
不用 input lease In let inpu AD 腳本 功能 #!/bin/bash #read -r使\取消轉義功能 -p提示內容 read -r -p "Please input A: " A read -r -p "Then please input B
第一個彙編程式:兩個數求和
Win32下第一個彙編小程式:求兩個數的和! 感覺彙編程式碼比較凌亂,看起來不爽,沒有C、Java那樣有邏輯,至少目前是這樣感覺的! ; 彙編程式:求兩個數的和 ; 作者: Mr.Lee ; 日期: 2011年5月16日 .386 .MODEL FLAT ExitPr
程式設計師面試題精選100題(55)-不用+、-、×、÷數字運算子做加法
方法一: 5的二進位制是101,17的二進位制10001。還是試著把計算分成三步:第一步各位相加但不計進位,得到的結果是10100(最後一位兩個數都是1,相加的結果是二進位制的10。這一步不計進位,因此結果仍然是0);第二步記下進位。在這個例子中只在最後一位相加時產生一個進
python全棧脫產第34天------開啟進程的兩種方式、join方法、進程對象其他相關的屬性和方法、僵屍進程、孤兒進程、守護進程、互斥鎖
for roc -- don 操作 windows main 周期 僵屍 一、開啟進程的兩種方式 方式一: from multiprocessing import Processimport timedef task(name): print(‘%s is run
python-進階教程-對兩個集合/字典求交集、差集、並集
1.集合 a = set([1,2,3,4,5,100,1000]) b = set([1,2,3,4,5,128.1024]) #交集 print(a & b) #{1, 2, 3, 4, 5} #差集 print(a - b) #{1000, 100} #並集
辯證法中包括一個關係、兩大特徵、三大規律、四種方法、五對範疇
辯證關係: 一、辨證關係原理 (一)物質和意識的辨證關係原理 (1)辨證唯物論認為,物質決定意識,意識是物質的反映。這一原理要求我們想問題辦事情必須做到一切從實際出發,使主觀符合客觀。 (2)意識對物質具有反作用,正確的意識能促進客觀事物的發展,錯誤的意識則阻礙客觀事物的發
java對List去重並排序、如何快速地去掉兩個List中相同的部分
1:去重並排序 package twolist; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.Has
java-mybaits-00502-案例-映射分析-一對一、一對多、多對多
per username nfa view 2.3 puts opened org double 1、一對一查詢【類屬性即可,association 】 案例:查詢所有訂單信息,關聯查詢下單用戶信息。 註意:因為一個訂單信息只會是一個人下的訂單,所以從查詢
面向對象、原型鏈、繼承知識梳理
中介 獲取 混合 console 原型 code name 諸多 祖先 單例模式:就是一個對象咯 var person={ name:‘xuwen‘, age:17 }; var person2={ name:‘xiaoxu‘, age:2
VR 全景、全景智慧城市對創業者,企業轉型有哪些幫助
校準 作圖 解決 獨立 完全 全景 免費雲 -a 成對 全景漫遊圖像是給人以三維立體感覺的實景720度合成圖像,此圖像最大的三個特點是: 1、全:全方位,全面的展示了雙360度球型範圍內的所有景致;可在通過鼠標拖動,觀看場景的各個方向; 2、景:實景,真實的場景,三維全景
Python 函數對象、生成器 、裝飾器、叠代器、閉包函數
exists 空間 體重 main show pow eth 內存 cit 一、函數對象 正確理解 Python函數,能夠幫助我們更好地理解 Python 裝飾器、匿名函數(lambda)、函數式編程等高階技術。 函數(Function)作為程序語言中不可或缺的一部分,太稀
leetcode鏈表--14、add-two-numbers(兩鏈表相加 得到新鏈表)
logs 錯誤 align 描述 eight val str nodes sent 題目描述 You are given two linked lists representing two non-negative numbers. The digits are sto
【JAVAEE學習筆記】hibernate02:實體規則、對象狀態、緩存、事務、批量查詢和實現客戶列表顯示
使用 ins tro trace ges create 綁定 criteria 命名 一、hibernate中的實體規則 實體類創建的註意事項 1.持久化類提供無參數構造 2.成員變量私有,提供共有get/set方法訪問.需提供屬性 3.持久化類中的屬性,應盡量使用包
Python基礎(正則、序列化、常用模塊和面向對象)-day06
.net 支持 tro sub 商城 pytho font spa 要求 寫在前面 上課第六天,打卡: 天地不仁,以萬物為芻狗; 一、正則 - - 在線正則工具:http://tool.oschina.net/regex/ -
mybatis3.2.7應用_高級映射(一對一、一對多、多對多)
mybatis3 單個 所有 由於 單表 myba 用戶 記錄 text 1. 一對一查詢 需求:查詢訂單信息,關聯查詢創建訂單的用戶信息 1.1 使用resultType實現 1.1.1 sql語句 確定查詢的主表:訂單表 確定查詢的關聯表:用戶表
5月15日上課筆記-js中 location對象的屬性、document對象、js內置對象、Date事件對象、
nts 根據 host value string 定時函數 date this 個數 location的屬性: host: 返回當前主機名和端口號 定時函數: setTimeout( ) setInterval() 二、document對
OOM之類、對象、實例、實體之辨析
有一個 white tro 解釋 you 習慣 解決 有意 會有 一、場景再現 有一個重要的概念你需要弄明白,那就是“類(class)”和“對象(object)”的區別。我用禪語來解釋一下吧: 魚和三文魚有什麽區別? 這個問題有沒有