摘要:        
# encoding=utf-8 def binary_search(alist, item): """二分查找 非递归方式""" n = len(alist) start = 0 end = n-1 while start alist[mid]: start = mid + 1 return False de...    
阅读全文
 
        
            posted @ 2017-09-17 00:24
晴空半岛
阅读(994)
推荐(0)
        
 
		
    
        
        
摘要:        
# encoding=utf-8 def merge_sort(alist): """归并排序""" n = len(alist) if n == 1: return alist mid = n // 2 # 对分割的左半部分进行归并排序 left_sorted_li = merge_sort(alist[:mid]) ...    
阅读全文
 
        
            posted @ 2017-09-16 15:39
晴空半岛
阅读(362)
推荐(0)
        
            
        
        
摘要:        
# encoding=utf-8 def quick_sort(alist, start, end): """快速排序""" if start >= end: return mid = alist[start] left = start right = end while left = mid: ri...    
阅读全文
 
        
            posted @ 2017-09-16 13:55
晴空半岛
阅读(252)
推荐(0)
        
            
        
        
摘要:        
# encoding=utf-8 def shell_sort(alist): """希尔排序""" n = len(alist) gap = n // 2 while gap >= 1: for j in range(gap, n): i = j while (i-gap) >= 0: ...    
阅读全文
 
        
            posted @ 2017-09-16 12:20
晴空半岛
阅读(239)
推荐(0)
        
 
		
    
        
        
摘要:        
# encoding=utf-8 def insert_sort(alist): """插入排序""" n = len(alist) for j in range(1, n): # 控制将拿到的元素放在前面有序序列正确位置的过程 for i in range(j, 0, -1): # 如果比前面的元素小,则往前移...    
阅读全文
 
        
            posted @ 2017-09-15 18:40
晴空半岛
阅读(292)
推荐(0)
        
            
        
        
摘要:        
# encoding=utf-8 def select_sort(alist): """选择排序""" n = len(alist) for j in range(0, n-1): # 设置最小元素下标 min_index = j # 寻找最小元素的过程 for i in range(j+1, n): ...    
阅读全文
 
        
            posted @ 2017-09-15 18:10
晴空半岛
阅读(209)
推荐(0)
        
            
        
        
摘要:        
# encoding=utf-8 def bubble_sort(alist): """冒泡排序""" n = len(alist) for j in range(n-1): flag = True for i in range(n-1-j): if alist[i] > alist[i+1]: ...    
阅读全文
 
        
            posted @ 2017-09-15 16:52
晴空半岛
阅读(207)
推荐(0)
        
            
        
        
摘要:        
# encoding=utf-8 class DoubleQueue(object): """双端队列""" def __init__(self): self.__items = [] def is_empty(self): """判空""" return self.__items == [] def add_...    
阅读全文
 
        
            posted @ 2017-09-15 16:12
晴空半岛
阅读(400)
推荐(0)
        
            
        
        
摘要:        
#encoding=utf-8 class Queue(object): """队列""" def __init__(self): self.__items = [] def enqueue(self, item): """进队列""" self.__items.insert(0, item) def deq...    
阅读全文
 
        
            posted @ 2017-09-15 16:03
晴空半岛
阅读(214)
推荐(0)
        
            
        
        
摘要:        
# encoding=utf-8 class Stack(object): """栈""" def __init__(self): """使用顺序表,即列表实现数据的存放""" self.__item = [] def push(self, item): """ti添加一个新的元素到栈顶""" """对于...    
阅读全文
 
        
            posted @ 2017-09-15 15:54
晴空半岛
阅读(279)
推荐(0)