什么是java算法
内容摘要
什么是java算法 算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,java算法就是采用Java语言来实现解决某一问题的清晰指令。算法的特征:输入性:有零个或多个外
文章正文
什么是java算法
算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,java算法就是采用Java语言来实现解决某一问题的清晰指令。
算法的特征:
输入性:有零个或多个外部量作为算法的输入
输出性:算法产生至少一个量作为输出
确定性:算法中每条指令清晰,无歧义
有穷性:算法中每条指令的执行次数有限,执行每条指令是时间也有限
可行性:算法原则上能够精确的运行,而且人们用纸和笔做有限次运算后即可完成
程序:算法用某种程序设计语言的具体实现,程序可以不满足又穷性
算法的四个标准:
正确性:在合理的数据输入下,能在有限时间内得出正确的结果
可读性:应易于人的理解,易于调试
健壮性:具备检查错误和对错误进行适当处理的能力
效率:算法执行时所需计算机资源的多少,包括运行时间和存储空间
算法的描述形式:1、自然语言 2、算法框图法 3、伪代码语言 4、高级程序设计语言
算法设计的一般过程:
1、理解问题
2、预测所有可能是输入
3、在精确解和近似解间做选择
4、确定适当的数据结构
5、算法设计技术
6、描述算法
7、跟踪算法
8、分析算法的效率
9、根据算法编写代码
下面是Java实现的一个算法:冒泡排序
/** * 冒泡排序 */ public class BubbleSort1 { public static void BubbleSort(int[] arr) { boolean flag = true; while(flag){ int temp;//定义一个临时变量 for(int i=0;i<arr.length-1;i++){//冒泡趟数,n-1趟 for(int j=0;j<arr.length-i-1;j++){ if(arr[j+1]<arr[j]){ temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; flag = true; } } if(!flag){ break;//若果没有发生交换,则退出循环 } } } } public static void main(String[] args) { int arr[] = new int[]{1,6,2,2,5}; BubbleSort.BubbleSort(arr); System.out.println(Arrays.toString(arr)); } }
代码注释
[!--zhushi--]