首页 > 其他分享 >面试题积累_01

面试题积累_01

时间:2023-01-31 22:47:11浏览次数:35  
标签:积累 面试题 01 return 奇数 int unsigned 二进制 bool

1

如何判断一个数是否为奇数?

//常规方法
bool isOdd_Method1(int n)
{
	if (n % 2)
		return true;
	else
		return false;		 
}
//高效方法
bool isOdd_Method2(int n)
{
	//奇数的二进制形式最后一位一定是1
	return n & 0x1;
}

注:二进制除了最后一位其他均是2的倍数,故如为奇数,则二进制形式的最后一位一定为1.

2

如何判断一个整数是否为2的幂?

bool isPowerof2_Method1(unsigned n)
{
	unsigned i = 1;
	//i = 1,2,4,8,...
	while (i < n)
	{
		i <<= 1;
	}
	//i >= n
	return i == n;
}

bool isPowerof2_Method2(unsigned n)
{
	//2的整数幂的二进制形式,只有一位为1,其余均为0
	//此方法n不可以取0
	return (n * n - 1) == 0;
}

示例:

3

给定一个不为0的整数,找出last set bit.
例:
输入 0011 0100
输出 4

int lastSetBit(int n)
{
   return n & -n;
}

标签:积累,面试题,01,return,奇数,int,unsigned,二进制,bool
From: https://www.cnblogs.com/MyXjil/p/17080916.html

相关文章

  • [ABC014D] 閉路 [LCA]
    现有一棵\(N(N\le10^5)\)个节点的树,保证节点编号为\(1\toN\)。首先输入\(N\),然后输入\(N-1\)条边。然后输入一个整数\(q(q\le10^5)\)。接下来给出\(q\)次询......
  • day01
    Markdown学习标题三级标题四级标题字体Hello,World!Hello,World!Hello,World!Hello,World!引用选择狂神说java,走向人生巅峰图片![截图](C:\Users\17904\Pictur......
  • 2023-01-31 量学基础 九阴真经 74
    1.三个基本因素(1)价格:阴过阳,阴盖阳,双阴盖阳(2)成交量:平量,小倍量,倍量(3)量线:平衡线,斜横线,平斜线2.有2个条件满足,减半仓,3个条件都满足,全出!         ......
  • 01基本用法
    importmatplotlib.pyplotaspltimportnumpyasnpx=np.linspace(-1,1,50)#y=2*x+1y=x**2plt.plot(x,y)plt.show()......
  • 关于NOI2010“超级钢琴”的反思
    [NOI2010]超级钢琴题目描述小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐。这架超级钢琴可以弹奏......
  • 面试题 03.02. 栈的最小值
    1.题目请设计一个栈,除了常规栈支持的pop与push函数以外,还支持min函数,该函数返回栈元素中的最小值。执行push、pop和min操作的时间复杂度必须为O(1)。3.代码classMinStack{......
  • 【230131-5】已知:x=(根号3-根号2)/(根号3+根号2),y=1/x. 求:y/x/x+x/y/y=?
    ......
  • 【230131-3】已知:x平方+xy+y=14,y平方+xy+x=28. 求:x+y=?
    ......
  • SqlServer2012 AlwaysOn部署
    一环境准备1软件准备(1)SQLServer2012企业版(2)WindowsServer20122IP准备IP作用172.16.100.115域服务器IP172.16.100.117数据库服务器IP172.16.100.118数据库服务器IP......
  • 20230129 T1 生日蛋糕(birth)
    生日蛋糕(birth)伤心题。。。题意\(n\)个点的树,第\(i\)个点有点权\(1\lea_i\lem\)。对于每个\(i\)满足\(1\lei\lem\),求出连通块内点权最大值为\(i\)的个......