随笔分类 - leetcode
摘要:在一组 N 个人(编号为 0, 1, 2, ..., N-1)中,每个人都有不同数目的钱,以及不同程度的安静(quietness)。 为了方便起见,我们将编号为 x 的人简称为 "person x "。 如果能够肯定 person x 比 person y 更有钱的话,我们会说 richer[i] = [x, y] 。注意 richer 可能只是有效观察的一个子集。 另外,如果 perso...
阅读全文
摘要:解题: 有一个由小写字母组成的字符串 S,和一个整数数组 shifts。 我们将字母表中的下一个字母称为原字母的 移位(由于字母表是环绕的, 'z' 将会变成 'a')。 例如·,shift('a') = 'b', shift('t') = 'u',, 以及 shift('z') = 'a'。 对于
阅读全文
摘要:题目: 解题思路: 0(M+n)的额外空间算法比较容易实现,实现代码如下:
阅读全文
摘要:题目: 解题思路: 异或从0到n进行异或得到结果val,再将val与数组中每个元素进行异或,即可得到结果。次题的解法类似一个1到n的数列中有一个数出现了两次,找出该数的解法一样。 代码如下: 解法二:
阅读全文
摘要:题目: 解题思路: 用两个栈即可实现。 stack<char> left; stack<char> right; 将所有括号依次压入left栈中, 1.如果发现left栈顶为右括号,则将其压入右栈。 2.如果发现left栈顶为左括号,则查看left与right栈顶的括号是否匹配,如果匹配,则匹配的括
阅读全文
摘要:题目: 解题思路: s[m][n] = s[m-1][n-1] + s[m-1][n]; 下一行的元素由上一行的元素两两相邻相加得到,最后再再两端加1即可。
阅读全文
摘要:解题思路: 1.循环交换位,交换16次即可。第i位与第33-i位交换。 代码如下: 2.将该数所有的位顺序颠倒即可(移位方向相反),即将原来的100变为001.
阅读全文
摘要:题目: 解题思路: 1.移位操作,每次移动一位。比较两个整数的最后一位是否相等,得出结果。 2.转换为第44题,求数字中1个数; val = x^y; 求出VAL中1的个数即可。 代码如下:
阅读全文
摘要:题目: 解题思路: 1.直接移位即可,右移32次,每次判断最后一位是否为1即可; 代码如下: 2.观察n&n-1,则将消除一位1.
阅读全文

浙公网安备 33010602011771号