code: func NewLRU(n int) Cache {
  	if n < 1 {
  		return nil
  	}
  	c := LRU{
  		table: make(map[int64]*node, n),
  		cap:   n,
  	}
  	c.root.next = &c.root
  	c.root.prev = &c.root
  	return &c
  }
docs: // NewLRU returns an LRU cache with n slots. If n is less than 1
  // a nil cache is returned.