U3D笔试题1:golang实现

 
func repeatOutPutArr(arr []int) {
   isChange := false
   lenght := len(arr)
   for i := 0; i < lenght; i++ {
      for j := 1; j < lenght; j++ {
         if arr[i]+arr[j] == 14 && i != j{
            isChange = true
            arr = RemoveSpringSlice(arr, i)
            arr = RemoveSpringSlice(arr, j-1)
            repeatOutPutArr(arr)
            return
         }
      }
   }

   if !isChange {
      for i := 1; i < len(arr); i++ {
         for j := i; j > 0; j-- {
            if arr[j] > arr[j-1] {
               break
            }
            arr[j-1], arr[j] = arr[j], arr[j-1]
         }

      }
      fmt.Println(arr)
   }
}

func RemoveSpringSlice(slice []int, start int) []int {
   slice = append(slice[:start], slice[start+1:]...)
   return slice
}

你可能感兴趣的:(面试题)