Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm surprised that this was not the first complaint. It's pretty clear "Hack" #1 isn't going to work.

  import random
  import time

  def timeit(func, _list, n=1000):
      start = time.time()
      for _ in range(n):
          func(_list=_list )
      end = time.time()
      print(f"Took {end-start} s")
      return

  def lstsearch(_list):
      sf = random.randint(0,len(_list))
      if sf in _list:
          return
      return

  def setsearch(_list):
      sf = random.randint(0, len(_list))
      if sf in set(_list):
          return
      return

  mylist = list(range(100000))

  timeit(lstsearch, mylist)
  timeit(setsearch, mylist)

  ----
  Took 0.23349690437316895 s
  Took 0.8901607990264893 s


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: