6.常用算法
Posted CodeTan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.常用算法相关的知识,希望对你有一定的参考价值。
常用算法
• 常用的几种算法
• 这些算法属于“通用算法”
它们在解决许多问题中都有应用。
遍试、迭代、递归和回溯
遍试
• 遍试(穷举,exhaust algorithm)
• 在有限的范围内,可以对所有的值都进行试验和判断,从而找到满足
条件的值
All_153.java 求三位的水仙花数
All_628.java 求9999以内的完全数
All_220.java 求9999以内的“相亲数”
• 遍试算法基本的模式
for(;;){ if(); }
迭代
• 迭代(iterative algorithm)
• 是多次利用同一公式进行计算,每次将计算的结果再代入公式进行计
算,从而逐步逼近精确解
Sqrt.java 自编一个函数求平方根
• 迭代的基本模式
while() { x = f(x); }
递归
• 递归(recursive)就是一个过程调用过程本身。
在递归调用中,一个过程执行的某一步要用到它的上一步(或上几步)的结果
• 示例
Fac.java 用递归方法求阶乘
CayleyTree.java 画出树
• 递归算法的基本模式
f(n){ f(n-1);
回溯
• 回溯(back-track)
• 回溯法也叫试探回溯法
• 先选择某一可能的线索进行试探,每一步试探都有多种方式,将每一方式都一一试探,如
果不符合条件就返回纠正,反复进行这种试探再返回纠正,直到得出全部符合条件的答案
或是问题无解为止。
• 示例 Queen8.java 八皇后问题
• 回溯法的其本模式
x++; if(…) x--;
IDE的使用
Eclipse常用编辑功能
• 智能提示(完成代码):Alt+/
sysout + Alt+/ //生成System.out.print
main Alt+/ //生成main
• 代码自动完成:Tab 或回车
• 快速修复:Ctrl+1
• 导入所需包:Ctrl+Shift+O
• 代码自动插入:Alt-Insert
这个可以自动插入Getter-Setter方法的代码
可以插入构造方法,可以插入override方法
• 自动
导航与书签
• Ctrl+O 打开类型
• F3 转至定义
• Ctrl+鼠标指向 转向定义或实现
• 显示成员:Ctrl+O
• Ctrl+F 查代、 Ctrl+H 替换
• 【Alt+←】、【Alt+→】 上下位置
• 使用书签
• 格式化文档 Ctrl+Shift+F
Java程序设计
修改与重构
• Alt+Shift+R 变量统一修改
• Ctrl+/,注释间切换
Java程序设计
NetBeans常用编辑功能
• 智能提示(完成代码):ctrl+\
• 代码自动完成:Tab 或回车
sout + Tab //生成System.out.print
psvm + Tab //生成main
• 显示错误提示:alt + enter
• 导入所需包:ctrl+shift+i
• 代码自动插入:Alt-Insert
这个可以自动插入Getter-Setter方法的代码
可以插入构造方法,可以插入override方法
Java程序设计
导航与书签
• Ctrl+O 打开类型
• Ctrl+B 转至源
• Ctrl-1 显示“项目”窗口
• 显示 Javadoc:Alt-F1
• Ctrl+F 查代、 Ctrl+H 替换
• Ctrl+G上一编辑位置
• 【Alt+←】、【Alt+→】 上下位置
• 使用书签
• 格式化文档Alt+Shift+F
Java程序设计
修改与重构
• Ctrl+R 变量统一修改, 取消用esc
• Ctrl+Shift+C,注释间切换
• 显示文档,Ctrl+Shift+Space
• 安装JDK源代码 工具--Java平台
运行与调试
• F5 开始调试主项目
• 运行主项目:F6
• 运行文件:Shift-F6
• * 设置断点:Ctrl-F8
• * 调试主项目:Ctrl-F5
• * 逐步调试:F7
• Application应用程序的参数args的设置,在Build->Set Main Projects
Configuration
• 程序运行快捷键F6
以上是关于6.常用算法的主要内容,如果未能解决你的问题,请参考以下文章