""" @time : 2019/6/29上午10:28 @Author: kongwiki @File: quickSort.py @Email: [email protected] """ from Sort.extentions import randomList def quickSort(arrylist): if not arrylist: return [] pivot = arrylist[0] preArray = sorted(filter(lambda x: x <= pivot, arrylist[1:])) postArray = sorted(filter(lambda x: x >= pivot, arrylist[1:])) return preArray + [pivot] + postArray if __name__ == '__main__': print("========== 随机生成整数数组 ==========") arraylist = randomList() print(arraylist) arraylist = quickSort(arraylist) print("==========随机生成整数数组排序后结果==========") print(arraylist)
if arrayList[mid] == key: return mid elif arrayList[mid] < key: low = mid+1 else: high = mid return low def insertSortII(arrayList): arrayLen = len(arrayList) for i in range(1, arrayLen): current = arrayList[i] position = binarySearch(arrayList[:i], current) # print("当前搜索到的位置为{}当前的数字为{}".format(position, arrayList[i])) for j in range(i, position, -1): # 后移一位 arrayList[j] = arrayList[j-1] arrayList[position] = current # print("当前循环的结果为{}\n".format(arrayList)) return arrayList if __name__ == '__main__': print("========== 随机生成整数数组 ==========") arrayList = randomList() print(arrayList) print("==========随机生成整数数组排序后的结果==========") arrayList = insertSortII(arrayList) print(arrayList)