今天的题相除的那个还是不太会写不用出发的方法等复习完再好好想想。
今天所练习题的来源----《LeetCode零基础指南》(第二讲) 函数_英雄哪里出来-CSDN博客
int add(int a, int b){
int c=0;
return (b)?add(a^b, (unsigned int)(a&b)<<1):a;
}
记住&与<<与^的用法;
在多次用^的事后可以求出每个位置对应的和结果二进制的但不会有仅为的结果;
而&则可以表示出两者之间仅为的结果所以用左移来实现结果,斌且不断重复得到最终的结果;
注意本题可以出现-,且符号在32位上若超出;将会导致溢出(这个刚学没多久趁现在好好记住)
所以用的unsigned
//写在力扣上的小笔记有点草率;
int multiply(int A, int B){
int c=0;
while(B){
c+=A;