位运算
文章平均质量分 58
颜值博主
这个作者很懒,什么都没留下…
展开
-
645. 错误的集合(异或寻找缺失的数)
难度简单集合s包含从1到n的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合丢失了一个数字并且有一个数字重复。给定一个数组nums代表了集合S发生错误后的结果。请你找出重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。示例 1:输入:nums = [1,2,2,4]输出:[2,3]示例 2:输入:nums = [1,1]输出:[1,2]提示:2 <= nums.leng...原创 2021-04-30 16:44:20 · 427 阅读 · 1 评论 -
递归乘法
面试题 08.05. 递归乘法难度中等37递归乘法。 写一个递归函数,不使用 * 运算符, 实现两个正整数的相乘。可以使用加号、减号、位移,但要吝啬一些。示例1: 输入:A = 1, B = 10 输出:10示例2: 输入:A = 3, B = 4 输出:12提示:保证乘法范围不会溢出为了不使用*完成乘法运算,很容易想到移位操作(左移1位相当于乘2),对于A >> 1相当于除2,B<< 1相当于乘2,这样保证AB乘的结果不变,需要注意的是原创 2021-02-27 15:35:26 · 1228 阅读 · 0 评论 -
面试题汇总
堆栈的定义,堆和栈的区别?一个由C/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap)— 由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。3、全局区(静态区)(static)— 全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在.原创 2021-01-22 21:16:19 · 164 阅读 · 0 评论 -
5675. 最接近目标值的子序列和(二分、位运算)
难度困难给你一个整数数组nums和一个目标值goal。你需要从nums中选出一个子序列,使子序列元素总和最接近goal。也就是说,如果子序列元素和为sum,你需要最小化绝对差abs(sum - goal)。返回abs(sum - goal)可能的最小值。注意,数组的子序列是通过移除原始数组中的某些元素(可能全部或无)而形成的数组。示例 1:输入:nums = [5,-7,3,5], goal = 6输出:0解释:选择整个数组作为选出的子序列,元...原创 2021-02-07 19:46:44 · 553 阅读 · 0 评论