home *** CD-ROM | disk | FTP | other *** search
/ com!online 2005 April / com_0405_1.iso / opensource / BTpp-0.5.4-bin.exe / $INSTDIR / BT++.exe / bisect.pyo (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2003-04-19  |  1.6 KB  |  58 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.2)
  3.  
  4.  
  5. def insort_right(a, x, 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 x < a[mid]:
  12.             hi = mid
  13.         else:
  14.             lo = mid + 1
  15.     a.insert(lo, x)
  16.  
  17. insort = insort_right
  18.  
  19. def bisect_right(a, x, 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 x < a[mid]:
  26.             hi = mid
  27.         else:
  28.             lo = mid + 1
  29.     return lo
  30.  
  31. bisect = bisect_right
  32.  
  33. def insort_left(a, x, 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 a[mid] < x:
  40.             lo = mid + 1
  41.         else:
  42.             hi = mid
  43.     a.insert(lo, x)
  44.  
  45.  
  46. def bisect_left(a, x, 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 a[mid] < x:
  53.             lo = mid + 1
  54.         else:
  55.             hi = mid
  56.     return lo
  57.  
  58.