home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 February / maximum-cd-2011-02.iso / DiscContents / digsby_setup85.exe / lib / util / primitives / bisect2.pyo (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-11-24  |  1.5 KB  |  58 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.6)
  3.  
  4.  
  5. def insort_right(a, x, cmp, lo = 0, hi = None):
  6.     if hi is None:
  7.         hi = len(a)
  8.     
  9.     while lo < hi:
  10.         mid = (lo + hi) // 2
  11.         if cmp(x, a[mid]) < 0:
  12.             hi = mid
  13.             continue
  14.         lo = mid + 1
  15.     a.insert(lo, x)
  16.  
  17. insort = insort_right
  18.  
  19. def bisect_right(a, x, cmp, lo = 0, hi = None):
  20.     if hi is None:
  21.         hi = len(a)
  22.     
  23.     while lo < hi:
  24.         mid = (lo + hi) // 2
  25.         if cmp(x, a[mid]) < 0:
  26.             hi = mid
  27.             continue
  28.         lo = mid + 1
  29.     return lo
  30.  
  31. bisect = bisect_right
  32.  
  33. def insort_left(a, x, cmp, lo = 0, hi = None):
  34.     if hi is None:
  35.         hi = len(a)
  36.     
  37.     while lo < hi:
  38.         mid = (lo + hi) // 2
  39.         if cmp(a[mid], x) < 0:
  40.             lo = mid + 1
  41.             continue
  42.         hi = mid
  43.     a.insert(lo, x)
  44.  
  45.  
  46. def bisect_left(a, x, cmp, lo = 0, hi = None):
  47.     if hi is None:
  48.         hi = len(a)
  49.     
  50.     while lo < hi:
  51.         mid = (lo + hi) // 2
  52.         if cmp(a[mid], x) < 0:
  53.             lo = mid + 1
  54.             continue
  55.         hi = mid
  56.     return lo
  57.  
  58.