Golang -數組去重

方法一: 

//這種發放適用於string,int,float等切片,會對切片中的元素進行排序 

func SliceRemoveDuplicates(slice []string) []string { 

      sort.Strings(slice) 

      i:= 0 

      var j int 

      for{ 

             if i >= len(slice)-1 { 

                    break 

             } 

  

             for j = i + 1; j < len(slice) && slice[i] == slice[j]; j++ { 

             } 

             slice= append(slice[:i+1], slice[j:]...) 

             i++ 

      } 

      return  slice 

  

  

方法二: 

func RemoveDuplicate(list *[]int) []int { 

      var x []int = []int{} 

      for _, i := range *list { 

             if len(x) == 0 { 

                    x = append(x, i) 

             } else { 

                    for k, v := range x { 

                           if i == v { 

                                  break 

                           } 

                           if k == len(x)-1 { 

                                  x = append(x,i) 

                           } 

                    } 

             } 

      } 

      return x 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章