摘要:
/*插入排序交换来,交换去,每次次确定一个元素的位置*/void Quicksort(ElementType A[], int N) { Qsort(A, 0, N-1); } ElementType Median3(ElementType A[], int Left, int Right) { int Center = (Left + Right)/2; if (A[... 阅读全文
摘要:
合并2个已排序的表 先将初始数组的两段完成排序后放在新数组中,再拷贝回去,由于采用递归方法处理,所以会将最下面的2个元素的先排序,1个的直接被返回了 这个过程一直重复直到完成 阅读全文
摘要:
构建最大堆,将堆首和堆尾互换,重新构建长为N-1的堆,一直下去,最后得到升序的数组 在构建堆时,基于子树已经是一个堆的前提下,然后调整根的位置 阅读全文
摘要:
比较相距一定间隔的元素,间隔不断缩小 在每个步长的循环中,都是一个多次的比较,如: 0 step step*2... 1 step+1 step*2+1... ... 即在每个步长中,不求全部排好序,只求i(0 ~ N-1)开始的每个step为步长的分元素排好序 步长为1时,直接进行了插入排序 阅读全文
摘要:
建立在前面的元素已经完成排序的基础上 阅读全文
摘要:
当使用正则表达式时,re 模块内部会干两件事情 1、编译正则表达式,如其字串本身不合法,报错 2、用编译后的正则表达式去匹配字符串 re_telephone = re.compile(r'^(\d{3})-{\d{3,8}}$') re_telephone.match('010-12345').gr 阅读全文