摸鱼学大师
摸鱼学大师
全部文章
分类
未归档(8)
题解(541)
归档
标签
去牛客网
登录
/
注册
摸鱼学大师的博客
问月月不明?
TA的专栏
547篇文章
2人订阅
孤帆远影碧空尽
547篇文章
10911人学习
全部文章
(共8篇)
题解 | #只出现一次的数字#
来自专栏
题目的主要信息: 一个整数数组,除了一个元素只出现了一次,其他元素都出现了两次 需要找出这个只出现一次的数组 方法一:哈希表 具体做法: 我们可以使用哈希表记录数组元素出现的次数,利用其快速访问特点快速去重。哈希表key值记录遇到的数组元素,第一次遇到次数计为1,后续如果再在哈希表中找到这个数字...
C++
哈希表
位运算
2022-02-08
1
463
题解 | #求最大连续bit数#
来自专栏
题目的主要信息: 求一个int类型数字对应的二进制数字中1的最大连续数 进阶要求:时间复杂度:O(log2n)O(log_2n)O(log2n),空间复杂度:O(1)O(1)O(1) 方法一:连除法 具体做法: 将十进制转换成二进制的方法可以用连除取余法,那我们不断连除2,每次都取余2得到最后...
C++
位运算
2021-10-31
52
1626
题解 | #查找输入整数二进制中1的个数#
来自专栏
题目的主要信息: 输入一个正整数,计算它在二进制下的1的个数 1<=n<=231−11<=n<=2^{31}-11<=n<=231−1 方法一:转化二进制字符串 具体做法: 我们可以将十进制整数转化成二进制后,再统计二进制中1的个数,鉴于二进制位数较多,我们用...
C++
位运算
2021-10-27
1
570
题解 | #Sudoku#
来自专栏
题目的主要信息: 输入已知数字的9∗99*99∗9盘面数组,空缺位以数字0表示 在空位填上1-9的数字,使每一行、每一列、每一个3∗33*33∗3方块内数字不重复 方法一:递归 具体做法: 我们用一个数组记录每行1-9是否出现过,一个数组记录每列1-9是否出现过,一个数组记录每个方块1-9是否出...
C++
位运算
递归
2021-10-24
2
354
题解 | #整数与IP地址间的转换#
来自专栏
题目的主要信息: ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个长整数 输入需要将一个ip地址转换为整数、将一个整数转换为ip地址 方法一:逐位分割,逐位计算 具体做法: 对于两个输入,题目已明确表示第一个输入是字符串型的IP地址,...
C++
位运算
2021-10-20
29
1572
题解 | #求int型正整数在内存中存储时1的个数#
来自专栏
题目的主要信息: 输入一个十进制int型整数,计算其二进制中1的个数 方法一:转化二进制 具体做法: 我们可以将十进制整数转化成二进制后,再统计二进制中1的个数,鉴于二进制位数较多,我们用字符串表示。采用连除法,对数字连续除2取余获取二进制每一位。然后遍历二进制字符串,得到二进制中1的个数。 #...
C++
位运算
2021-10-09
29
728
题解 | #数组中只出现一次的数(其它数出现k次)#
来自专栏
思路: 题目的主要信息: 数组有n个无序数字,其中有一个数字只出现了1次,其他数字都出现了k次 需要找到只出现了一次的数字 k>1,k无特殊情况,只需要考虑空数组 方法一:排序法具体做法:首先对数字进行排序,使之呈现递增的状态,这样相同的数字必然相邻。因为其他数字至少出现大于1次,因此首尾...
数组
哈希表
位运算
排序
2021-07-28
0
905
题解 | #二进制中1的个数#
来自专栏
思路: 题目的主要信息: 统计32位整型有符号数二进制中1的个数 因负数用补码表示,故不能用连除法 方法一:循环按位比较法具体做法:可以直接循环检查二进制的每一位是否为1. 1 << i: 用于移位 & :与运算比较是否为1 class Solution { public...
位运算
二进制
位与
移位
2021-07-22
0
513