一些算法总结
来源:互联网 发布:淘宝卖项链的白金 编辑:程序博客网 时间:2024/05/05 07:42
1、用一个数据结构实现
if (x == 0) y = a;
else y = b;
j[] = {a,b};
void reverse( char * str) {
char tmp;
int len;
len = strlen(str);
for ( int i = 0 ;i < len / 2 ; ++ i) {
tmp = char [i];
str[i] = str[len - i - 1 ];
str[len - i - 1 ] = tmp;
}
int f( int x) {
int n = 0 ;
while (x) {
++ n;
x &= x - 1 ;
}
return n;
递归编程的经典问题。
要搬移有n个碟片,可以考虑先搬移 (n-1)个碟片, 因为第n个碟片最大,放在最下面,根据规则,它不会妨碍其他(n-1)个碟片的移动,根据这个思路,就可以处理(n-2),(n-3)等。。。
最后简化到只剩一个碟片,简单移动一下即可。
public static void hanoi(int n,char a, char b, char c){
if( n> 0){
hanoi(n-1,a,c,b);
move(n,a,c);
hanoi(n-1,b,a,c);
}
}
public static void move(int n,char from, char to){
System.out.println("move " + n +" from "+ from + " ------>"+to);
}
public static void main(String[] args) {
hanoi(3,'A','B','C');
}
if (x == 0) y = a;
else y = b;
j[] = {a,b};
y=j[x];
判断循环链表,直接一个指针从头到尾,如果有结点 == head则为循环链表
void reverse( char * str) {
char tmp;
int len;
len = strlen(str);
for ( int i = 0 ;i < len / 2 ; ++ i) {
tmp = char [i];
str[i] = str[len - i - 1 ];
str[len - i - 1 ] = tmp;
}
}
4、位图处理,需要大内存
int f( int x) {
int n = 0 ;
while (x) {
++ n;
x &= x - 1 ;
}
return n;
}
6、汉诺塔问题
递归编程的经典问题。
要搬移有n个碟片,可以考虑先搬移 (n-1)个碟片, 因为第n个碟片最大,放在最下面,根据规则,它不会妨碍其他(n-1)个碟片的移动,根据这个思路,就可以处理(n-2),(n-3)等。。。
最后简化到只剩一个碟片,简单移动一下即可。
递归编程代码及其简单,但比较抽象。
public static void hanoi(int n,char a, char b, char c){
if( n> 0){
hanoi(n-1,a,c,b);
move(n,a,c);
hanoi(n-1,b,a,c);
}
}
public static void move(int n,char from, char to){
System.out.println("move " + n +" from "+ from + " ------>"+to);
}
public static void main(String[] args) {
hanoi(3,'A','B','C');
}
- 一些算法的总结
- 一些算法总结
- 一些排序算法总结
- 一些算法总结
- px4一些算法总结
- 一些算法总结
- 一些排序算法的总结
- AS3一些算法的总结
- 一些算法及题目总结
- 排序算法的一些总结
- 黑马程序员-- 一些算法总结
- qgy总结的一些算法
- 一些常见算法复杂度总结
- 排序算法的一些总结
- A*算法的一些总结
- g726算法的一些总结
- 【算法】 初等数论 一些总结
- 总结 一些 SQL Server 中的时间算法
- 梦想工厂
- java实现二叉树的常见操作
- keil下LPC2138实现printf
- 十步优化SQL Server中的数据访问
- 用session保存信息并读出
- 一些算法总结
- 修改manifest中package="application.name",在java代码中引用R出错!解决
- tty 设备
- tty 设备
- 3种数据库连接方式
- Extjs在frompanel中隐藏某个textfield以及label组件的方法
- Android JNI知识简介
- jquery的autocomplete属性及乱码问题
- 谈谈SAP PI 的功能和PI顾问的特点