小编San*_*ndy的帖子

在字符串中查找第一个非重复字符的最佳方法

找到字符串的第一个非重复字符的最佳空间和时间效率解决方案是aabccbdcbe什么?

这里的答案是d.因此,让我感到震惊的是,它可以通过两种方式完成:

  1. 对于每个索引,我循环i-1次并检查该字符是否再次出现.但这并不高效:此方法的增长为O(N ^ 2),其中N是字符串的长度.
  2. 另一种可能的好方法是,如果我可以形成树或任何其他ds,以便我可以根据权重(出现次数)对字符进行排序.这可能只需要一个长度为N的循环通过字符串形成结构.那只是O(N)+ O(构建树或任何ds的时间).

python algorithm

8
推荐指数
4
解决办法
2万
查看次数

通过取消最右边的位来计算奇偶校验

计算奇偶校验的第一种方法是对每个位进行xor运算. - 这很容易理解.对此的增强是丢弃较低位并保持反转奇偶校验直到数字变为0即

While loop till number is greater than 0
1) parity = parity^1
2) number = number & (number-1)
Run Code Online (Sandbox Code Playgroud)

这是如何运作的?我猜想要掌握这种方法的想法有点困难.

c python java binary parity

1
推荐指数
1
解决办法
1602
查看次数

标签 统计

python ×2

algorithm ×1

binary ×1

c ×1

java ×1

parity ×1