
算法导论学习篇
文章平均质量分 52
Big_big_Gu
Big_big_Gu,一如既往都是你。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
分治法之归并排序1
分治法:将原问题分解成一系列的子问题。 static void MERGE_SORT(int []a,int i,int j){ if(j>i){ int k=(j+i)/2; MERGE_SORT(a, i, k); MERGE_SORT(a, k+1, j);原创 2013-10-29 21:31:45 · 719 阅读 · 0 评论 -
计数排序
public static void main(String[] args) { // TODO Auto-generated method stub //int aa[]={4,2,6,7,9,10,5,4,8,1}; //int aa[]={0,4,2,6,7,9,1}; int aa[]={2,1,1,1,1,1,1,1,1,2,3,3,3,5,5,9}; print(原创 2013-10-30 19:17:25 · 621 阅读 · 0 评论 -
分治法之快速排序
快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。 总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快转载 2013-10-30 18:34:07 · 955 阅读 · 0 评论 -
堆排序 O(nlgn)
堆排序是利用堆的性质进行的一种选择排序。下面先讨论一下堆。 1.堆 堆实际上是一棵完全二叉树,其任何一非叶节点满足性质: Key[i]=Key[2i+1]&&key>=key[2i+2] 即任何一非叶节点的关键字不大于或者不小于其左右孩子节点的关键字。 堆分为大顶堆和小顶堆,满足Key[i]>=Key[2i+1]&&key>=key[2i+2]称为大顶原创 2013-10-30 14:07:27 · 732 阅读 · 0 评论 -
分治法之归并排序2-求解逆序数
public static void main(String[] args) { // TODO Auto-generated method stub //int aa[]={4,2,6,7,9,10,5,4,8,1}; int aa[]={4,2,6,7,9,1}; print(aa); System.out.println("inversion num: "+INV原创 2013-10-30 09:39:31 · 938 阅读 · 0 评论