Java 复习笔记_第3天
数据结构和算法
冒泡:每次比较都可找出最大或最小的,有序的在最右边
选择排序:有序的在最左边
插入排序:速度比冒泡快一倍,比选择也快。
递归
调用自身
汉诺塔问题:
/**
* @汉诺塔的问题
*/
public class HanoiTowers {
static int count = 0; // 总共要移多少次
public void moveTowers(int n, String start, String inter, String to) {
// 柱子的n个圆盘移动到目标柱子上
count++;
if (n == 1) {
System.out.println("从" + start + "到" + to);
} else {
// 首先将n-1个盘子移到备用柱,这里用到递归(方法调用方法本身),以便得到最底下最大的盘子
moveTowers(n - 1, start, to, inter);
System.out.println("从" + start + "到" + to);
// 然后把n-1个备用柱上的盘子移到目标柱子上
moveTowers(n - 1, inter, start, to);
}
}
public static void main(String[] args) {
new HanoiTowers().moveTowers(3, "A", "B", "C");
System.out.println("总共要移动" + count+"次");
}
}
相关文档:
import java.util.Stack;
/**
* JAVA获得一个数组的指定长度的排列组合。<br>
*
* @author JAVA世纪网(java2000.net, laozizhu.com)
*/
public class TestSequenceAll {
public static void main(String[] args) {
TestSequenceAll t = new TestSequenceAll();
Ob ......
细节上需要改进。
import java.util.*;
public class Map {
Vector<int[]> v = new Vector<int[]>();
Vector<Integer> vv = new Vector<Integer>();
Map() {
int[] array = { 1, 2, 3, 4, 5 };
Scanner s = new Scanner(System.in);
int x = s.nextInt();
pro(array, 0, x);
for(int i=0 ......
import java.util.regex.*;
public final class RegExpValidator
{
/**
* 验证邮箱
* @param 待验证的字符串   ......
package com.deng.oracle;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestOracle {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriv ......
Java中的访问权限控制符有四个.
作用域_____当前类____同一package___子孙类____其他package
public______√___________√__________√___________√
protected___√___________√__________√___________×
friendly_____√___________√__________×________ ......