- 博客(4)
- 收藏
- 关注
原创 排序(四) 快速排序
原始快速排序:选取最左边元素作为标准,将所有小于它的元素放在左边,大于它的元素放在右边# quick_sort.py# [l,r]def swap(a,b): return b,adef __partition(array,l,r): e = array[l] j = l for i in range(l+1,r+1): if(arr...
2018-08-14 14:14:17 216
原创 排序(三) 归并排序
核心在于归并两个有序数组:开辟新的空间,三个指针,依次指向第一组数、第二组数、新的数组,比较两个待合并数组的当前元素,将小者放入新数组中。两种思想:自顶向下(递归)mergeSort;自底向上mergeSortBU# merge_sort.py# [l,r]def __merge(array,l,mid,r): aux = array.copy() i = l ...
2018-08-14 11:05:45 277
原创 排序(二) 基础排序
选择排序:在待排数据元素中选出最小元素,与序列首元素交换# selection_sort.pydef swap(a,b): return b,adef selectionSort(array,n): for i in range(n): minIndex = i for j in range(i+1,n): if...
2018-08-14 10:45:38 152
原创 排序(一) 辅助函数
排序算法测试的辅助函数:1.形成随机数组2.形成几近有序数组3.算法时间测试# SortTestHelper.pyimport randomimport timedef generateRandomArray(n,rangeL,rangeR): assert rangeL<=rangeR,\ "rangeR must be greater ...
2018-08-14 09:57:20 323
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人