什么是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--]

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!