7.15 窗口函数 | 二分 | 位运算
05.07
1.位运算
2.位图
class Solution {
public:
int exchangeBits(int num) {
bitset<33> bitNum(num);
for (int i = 0; i < 16; i++){
bitNum[32] = bitNum[2*i];
bitNum[2*i] = bitNum[2*i+1];
bitNum[2*i+1] = bitNum[32];
}
return (int)bitNum.to_ulong();
}
};
577.员工奖金
select e.name,b.bonus
from Employee e
left join Bonus b on e.empId = b.empId
where b.bonus <1000 or b.bonus is null;
游戏查询
select player_id,
min(event_date) as first_login
from Activity
group by player_id
lc1661
抽象后,计算查询
select
machine_id,
round(2*avg(if(activity_type = 'start',-1,1)*timestamp),3) as processing_time
from
Activity
group by
machine_id
lcr069.二分
class Solution {
public:
int peakIndexInMountainArray(vector<int>& arr) {
int size = arr.size();
int left = 0;
int right = size - 1;
while(left <= right){
int mid = left + (right - left) / 2;
if(arr[mid] < arr[mid + 1]){
left = mid + 1;
}else{
right = mid - 1;
}
}
return left;
}
};