teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

編集

2021/05/23 05:35

投稿

asm
asm

スコア15149

answer CHANGED
@@ -49,5 +49,5 @@
49
49
 
50
50
  `i`と`x`の動きに注目
51
51
  `x`が
52
- hash_val(a) → hash_val(a)+1 → hash_val(a)+1+2 → hash_val(a)+1+2+3
52
+ hash_val(a) → hash_val(a)+1 → hash_val(a)+1+3 → hash_val(a)+1+3+5
53
53
  と動きます。

1

追記

2021/05/23 05:35

投稿

asm
asm

スコア15149

answer CHANGED
@@ -23,4 +23,31 @@
23
23
  > }
24
24
  > }
25
25
 
26
- にて`hash_val("art")`と`hash_val("rat")`が同じ値を返すのは不都合にみえませんか?
26
+ にて`hash_val("art")`と`hash_val("rat")`が同じ値を返すのは不都合にみえませんか?
27
+
28
+ ---
29
+
30
+ **追記**
31
+
32
+ ```c
33
+ int hash_search(struct cell *A, char *a)
34
+ {
35
+ int x,i=0;
36
+ x = hash_val(a);
37
+ for(i=0; i<m; i++)
38
+ {
39
+ if()
40
+ else if()
41
+ else
42
+ {
43
+ i = i+1;
44
+ x = (x+i)%m;
45
+ }
46
+ }
47
+ }
48
+ ```
49
+
50
+ `i`と`x`の動きに注目
51
+ `x`が
52
+ hash_val(a) → hash_val(a)+1 → hash_val(a)+1+2 → hash_val(a)+1+2+3
53
+ と動きます。