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.常用算法的主要内容,如果未能解决你的问题,请参考以下文章

1-6算法设计常用思想之迭代法

C++ 26 常用算法

常用算法篇-洗牌算法

常用算法模板

算法:常用排序算法

C++中STL常用算法