1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| // @Title: 两个列表的最小索引总和 (Minimum Index Sum of Two Lists)
// @Author: 15816537946@163.com
// @Date: 2022-03-14 23:28:01
// @Runtime: 28 ms
// @Memory: 7 MB
func findRestaurant(list1 []string, list2 []string) []string {
if len(list2) > len(list1) {
list1, list2 = list2, list1
}
r := make(map[string]int)
for i := range list1 {
r[list1[i]] = i
}
min := 2002
var ret []string
for i := range list2 {
//fmt.Println(min)
if idx, ok := r[list2[i]];ok {
if idx+i < min {
min = idx+i
ret = []string{list2[i]}
fmt.Println(ret)
} else if idx+i == min {
ret = append(ret, list2[i])
}
}
}
return ret
}
|