...
Tawesoft Logo

Source file src/tawesoft.co.uk/go/loader/misc.go

Documentation: src/tawesoft.co.uk/go/loader/misc.go

     1  package loader
     2  
     3  // intArrayDeleteElement removes an item at index idx from an integer array
     4  // without preserving order by swapping with the last item, then shrinking
     5  func intArrayDeleteElement(xs []int, idx int) []int {
     6      xs[idx] = xs[len(xs) - 1]
     7      return xs[:len(xs) - 1]
     8  }
     9  
    10  // intArrayFindAndDeleteElement finds and removes an item from an integer array
    11  // without preserving order by swapping with the last item, then shrinking
    12  func intArrayFindAndDeleteElement(xs []int, element int) []int {
    13      for i, x := range xs {
    14          if x == element {
    15              return intArrayDeleteElement(xs, i)
    16          }
    17      }
    18      panic("element does not exist in array as expected")
    19  }
    20  

View as plain text