1、冒泡排序
public class doBubbleSort { public void doBubbleSort(int[] src){ int len = src.length; for(int i = 0 ; i<len ; i++){ for(int j = i+1 ; j<len; j++){ int temp; if(src[i]>src[j]){ temp = src[j]; src[j] = src[i]; src[i] = temp; } } doPrint(i,src); } } private void doPrint(int i ,int[] src) { if(i<src.length-1){ System.out.print(src[i] + "<"); }else{ System.out.print(src[i]); } } }
2、选择排序
定义一个变量记录最小值,另一个变量记录最小值下标。循环每个元素,假定元素是最小值,然后与后面每个元素做对比。得到真实最小值和下表。
public class doChooseSort { public void doChooseSort(int[] src){ int len = src.length; for(int i = 0 ; i <len ; i++ ){ int temp =src[i]; int tempLocation = i; for(int j=i+1; j<len; j++ ){ if(temp>src[j]){ temp = src[j]; tempLocation=j; } } src[tempLocation] = src[i]; src[i] = temp; doPrint(i,src); } } private void doPrint(int i ,int[] src) { if(i<src.length-1){ System.out.print(src[i] + "<"); }else{ System.out.print(src[i]); } } }
3、递归算法。
递归主函数只调用一次方法,方法内部调用给自己。所以,该方法的返回值一定和参数类型相同。
public class Test { public int Test(int i){ if(i==0||i==1){ return i; }else{ return i*Test(i-1); } } public static void main(String [] args){ Test test = new Test(); System.out.println(test.Test(5)); } }
相关推荐
实验一、冒泡排序算法和递归算法.doc
合并排序递归和非递归算法的实现可以让人理解到递归算法的实现有时候比非递归算法效率高很多,人只需要给出一个递归公式和一个递归出口,所有的事都可以交给计算机来完成了
合并排序非递归算法是学习计算机算法与实现的一种应用,可以巩固c语言所学的知识
用C实现了快速排序的非递归算法. int quickpass ( sqlist &R, int low, int high ) { ... } void quicksort ( sqlist &r, int low, int high ) { ... }
c++实现的合并排序算法 用递归和非递归两种方式实现的
8645 归并排序 (非递归算法).txt
排序生成算法递归版的描述1
冒泡排序递归算法
实现并验证合并排序算法; Ex2:实现并验证快速排序算法 Ex3:用递归与分治的方法设计并实现寻找第k小元素算法
用函数实现归并排序(非递归算法),并输出每趟排序的结果 Input 第一行:键盘输入待排序关键的个数n 第二行:输入n个待排序关键字,用空格分隔数据 Output 每行输出每趟排序的结果,数据之间用一个空格分隔 Sample...
本文对经典的堆排序非递归算法进行了详细的分析,并用JAVA实现。用过该问题的JAVA实现,可使学习者清晰的观测到解决该问题的全过程。
合并排序算法非递归形式源码 http://edsionte.com/techblog/archives/2898
快速排序算法设计与分析总结 二叉树与树的转换前序、后序的递归、非递归算法,层次序的非递归算法的实现 二叉树与树的转换前序、后序的递归、非递归算法,层次序的非递归算法的实现,应包含建树的实现 实现树与...
全排序的递归与非递归算法C++实现 递归的思想如下:perm(p1,p2...pn)=p1perm(p2,p3...pn)+p2perm(p1,p3,p4...pn)+...+pnperm(p1,p2...pn-1)
快速排序一般用的是递归算法,利用系统的提供的栈结构,而此非递归算法没有利用栈,巧妙完成了排序,并提供人机交互界面
合并排序的递归调用和合并排序的非递归调用的对比,可以让人感受到选择递归调用可以提高工作作业效率,只要得到递归公式和递归出口就可以了,问题解决起来会很省力
合并排序算法和快速排序算法采用了采用分治法、递归的方法,将时间复杂度降为O(nlogn)。在本次实验中将数据量提到5万的时候,该类算法运行时间仍在几毫秒左右,而上面的3种算法运行时间已经到达十几秒左右,效率...
递归实现的二路归并排序算法,其中对结构体按其内部一个关键字(本例是对一个任务结构体,按其收益排序)进行排序
插入排序递归非递归汇编写法 内含详细注释
用递归方式实现,在VC中调试正常,执行效率不高,却可以使用。