使用哈希表

 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

import "fmt"



func main() {

    a := [...]int{2,3,1,0,2,5,3}

    num := make(map[int]bool)

    for _, v := range a {

        if !num[v] {

            num[v] = true

        } else {

            fmt.Println(v)

        }

    }

}

排序查找

 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
32
33
34
35
36
37
38
39
40
41

package main



import (

    "fmt"

    "sort"

)



func main() {

    a := []int{2,3,1,0,2,5,3}

    sort.Ints(a)

    for i, v := range a {

        if i != v {

            if v == a[v] {

                fmt.Println(v)

            } else {

                a[i], a[v] = a[v], a[i]

            }

        }

    }

}