title: search function is too slow recordclass python optimization
body: <p><code>Dict()</code> are memory consuming so I tried to use other way. using dataobject what took in 6Gb it's now 700M. However, when it comes to search, it very slow what i implemented</p>
  
  <p>I know I can't compete with python, but at least make it better </p>
  
  <p>Please if you have any idea maybe Cpython</p>
  
  <p>First: I tried chained nodes but still slow  </p>
  
  <pre><code>from recordclass import dataobject
  class node(dataobject):
        elt1:tuple
        elt2:list
        _next:str
  
  
  def find(n1,elt1): 
    if n1 is None: 
      return None 
    if n1.elt1==elt1: 
      #print(n1.elt2)
      return n1.elt2
    else: 
      return find(n1._next,elt1) 
  #or
  
  def find1(n1,elt1):
    while n1 is not None:
      if n1.elt1==elt1: 
        #print(n1.elt2)
        return n1.elt2
      else:
        n1=n1._next
  
  n1=None 
  daca=dict()
  for i in range(0,100,2): 
    n1=node(i,i+1,n1) 
    daca[i]=i+1
  
  
  #find(n1,12) compared to daca[12], dictionary is 7 times faster than find
  </code></pre>
  
  <p>second: I tried to append all the nodes to a list but yet still slow</p>
  
  <pre><code>
  from recordclass import dataobject
  class node(dataobject):
        elt1:tuple
        elt2:list
  
  
  def find(n1,elt):
    return list(filter(lambda x: x.elt1==elt ,n1))
  
  
  n1=[] 
  daca=dict()
  for i in range(0,100,2): 
    n1.append(node(i,i+1) )
    daca[i]=i+1
  
  #find(n1,12) compared to daca[12], dictionary is 7 times faster than find
  
  </code></pre>