mirror of
https://github.com/lWolvesl/leetcode.git
synced 2026-01-12 18:08:38 +08:00
init
This commit is contained in:
15
README.md
Normal file
15
README.md
Normal file
@@ -0,0 +1,15 @@
|
||||
- 02/2506
|
||||
- ```c++
|
||||
for (const string &word : words)
|
||||
{
|
||||
int state = 0;
|
||||
for (char c : word)
|
||||
{
|
||||
state |= 1 << (c - 'a');
|
||||
}
|
||||
res += cnt[state];
|
||||
cnt[state]++;
|
||||
}
|
||||
```
|
||||
- 这是一种位压缩算法,巧妙的利用二进制的位来表示一个单词中出现的所有字母。
|
||||
- 关键就是`state |= 1 << (c - 'a');`这一行。这一行的作用是将state的第(c - 'a')位设为1,这样就可以表示这个单词中出现了字母c。
|
||||
Reference in New Issue
Block a user