• @riodoro1@lemmy.world
    link
    fedilink
    English
    01 year ago

    So… it has to iterate over the whole empty list is what you’re saying? like once for every of the zero items in the lost?

    • @borokov@lemmy.world
      link
      fedilink
      English
      01 year ago

      Don’t know how list are implemented in Python. But in the dumb linked list implementation (like C++ std::list), each element has a “next” member that point the the next element. So, to have list length, you have to do (pseudo code, not actual python code):

      len = 0
      elt = list.fisrt
      while exist(elt):
          elt = elt.next
          len++
      return len
      

      Whereas to test if list is empty, you just have to:

      return exist(list.first)
      
      • @riodoro1@lemmy.world
        link
        fedilink
        English
        01 year ago

        That’s exactly what I was getting at. Getting length of an empty list would not even enter the loop.