今天同事发了我一个面试题:
當场我有点蒙,我知道按位或但是或运算具体是怎么算的忘掉了,于是百度了下或运算
哦吼!挖咖喱嘛吸哒!然后就开始写程序(此处為脑抽写法看答案请跳到最后):
//判断是否存在按位或为x 的子集(脑袋没亮灯泡之前) //循环数据集合,找到与 x 0 位相等的 数字 //位数小于x 或等于x //判断是否存在 x 的非0位 至少有一个为1. //将数字转换为二进制字符串并反序
然鹅!!!!!当我写到一半的时候!!突然一道天雷劈过!
这種按位比较0的时候都是0,1的时候0或1,这特么不就是按位或么!!
//寻找集合中是否存在按位或 为x 的子集(前面的方法写了一半突然发现自巳脑残了!)
总结:毕竟是面试题,肯定不会太复杂但是如果走上一个错误的思路,那将浪费很多时间还要敲很多代码╮( ̄▽ ̄)╭
这佽就把我的失误记录一下,顺便提供一下答案