摘要: 插入排序 将数组看成是两部分,前部分是有序的,后部分是无序的。将无序的数组逐个插入有序的数组中。java实现public int[] insertSort(int[] a){ int len = a.length; for(int i=1;i=0&&a[j]>key){ //注意使用while,不要使用for a[j+1]=a[j]; j--; } a[j+1]=key; } return a; }冒泡排序 两个指针,循... 阅读全文
posted @ 2014-04-09 22:41 EchoLee 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 二分查找 找到数组的中间项,比较数key和中间树的大小,如果小于中间项,就查找前半部分,如果大于中间项,就查找后半部分。非递归实现public int BinarySearch(int[] a, int key){ int beginIndex=0; int endIndex=a.length-1; int midIndex=0; while(a!==null&&beginIndexkey) return BinarySearch(a,key,beginIndex,midIndex-1); else return Binar... 阅读全文
posted @ 2014-04-09 20:47 EchoLee 阅读(126) 评论(0) 推荐(0) 编辑