算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,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 for(int j=0;j if(arr[j+1] 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)); }}
长沙牛耳教育推出的Java算法视频教程全套免费下载,这是一套超级详细的数据结构与算法基础视频教程,本套视频教程适合数据结构与算法零基础学员学习,且是你学习数据结构与算法的好帮手。
课程学习目录
1.数据结构&算法:数据
2.数据结构&算法:数据元素
3.数据结构&算法:数据对象
4.数据结构&算法:概述
5.数据结构&算法:线性关系
6.数据结构&算法:树形关系
7.数据结构&算法:图形关系
8.数据结构&算法:数据关系小结
9.数据结构&算法:抽象数据类型
10.数据结构&算法:算法及性能分析-什么是算法
11.数据结构&算法:算法及性能分析-算法的基本特征
12.数据结构&算法:算法及性能分析-算法的设计要求
13.数据结构&算法:算法及性能分析-算法的时间复杂度
14.数据结构&算法:算法及性能分析-算法的时间复杂度分析1
15.数据结构&算法:算法及性能分析-算法的时间复杂度分析2
16.数据结构&算法:算法及性能分析-算法的空间复杂度
17.数据结构&算法:线性表抽象数据类型的定义
18.数据结构&算法:定义接口描述线性表的操作
19.数据结构&算法:线性表的顺序实现插入元素分析
20.数据结构&算法:线性表的顺序实现删除元素分析
21.数据结构&算法:线性表的顺序实现插入元素代码
完整目录可以关注长沙牛耳教育Java视频教程
主讲老师:长沙牛耳教育崔老师
讲师简介
山东科技大学软件工程专业硕士研究生,13年以上软件研发及管理经验,曾先后就职于清华同方、互联科技、神州数码、百度糯米等知名软件企业;主要从事JAVA程序设计、iOS手机开发、数据库设计;精通数据结构和算法;在开发的过程中也经常进行新技术培训;曾出版过大学使用的计算机相关教材,副主编教材三部,参编教材多部;授课风格非常风趣,在崔老师的课堂上大家总是被逗的开怀大笑,能够让学生在非常轻松的状态下掌握相关技术;曾设计并主持研制短跑智能测试系统、海信日立SMS系统、考宝网等项目。
以上就是对“Java算法讲解视频,菜鸟入门”的介绍,希望对大家有所帮助,还想学习更多关于Java的课程,可以关注长沙牛耳教育官网Java视频教程,免费下载学习。