1、Fibonacci-费式数列问题说明: Fibonacci 为 1200 年代的欧洲数 学家,在他的著作中曾经提到:若有一只兔子每个月生一只小兔子, 一个月后小兔子也开始生产。起初只有一只兔子,一个月后就有两只 兔子,两个月后有三只兔子,三个月后有五只兔子(小兔子投入生 产)……
2、巴斯卡三角形(Pascal) 问题说明: 巴斯卡(Pascal)三角 形基本上就是在解 nCr ,因为三角形上的每一个数字各对应一个 nCr ,其中 n 为 row,而 r 为 colnmu
3、三色旗(ThreeColorFlags) 问题说明: 三色旗的问题最早由 E.W.Dijkstra 所提出, 塔所使用的用语为 Dutch Nation Flag (Dijkstra 为荷兰人) ,而多数的作者则使用 Three-Color Flag 来说明。 假设有 一条绳子,上面有红,白,蓝三种颜色的旗子,起初绳子上的旗子颜 色并没有顺序,您希望将之分类,并排列蓝,白,红的顺序,要如何 移动次数才会最少,注意您只能在绳子上进行这个动作,而且一次只 能调换两个旗子。
4、老鼠走迷宫(Mouse) 问题说明: 老鼠走迷宫是循环求解的 基本类型, 我们在二维数组中用 2 来表示迷宫的墙壁, 使用 1 来表示 老鼠的行走路径,并用程序求出从入口到出口的距离。
5、骑士走棋盘(Knight tour) 问题说明: 骑士游戏,在十八世纪 倍受数学家与拼图迷的注意,骑士的走法为西洋棋的走发,骑士可以 由任何一个位置出发,它要如何走完所有的位置。
6、八个皇后(Queen) 问题说明: 西洋棋中的皇后可以直线前 进,吃掉遇到的所有棋子,如果棋盘上有八个皇后,则这八个皇后如 何相安无事的放置在棋盘上?
7、八枚银币(Coins)
问题说明: 现在有八枚银币 abcdefg,已 知其中一枚是假币,其重量不同于真币,但不知道是轻还是重,如何 用天平以最小的比较次数决定出那个是假币, 并得知假币是比真币轻 还是重。
8、生命游戏(Life game) 问题说明: 生命游戏,为 1970 年英 国数学家 J.H.Conway 所提出,某一细胞的邻居包括上,下,左,右, 左上,左下,右上与右下相邻的细胞,游戏规则如下: 1,孤单死亡: 如果细胞的邻居小于一个,则该细胞在下一个状态死亡。 2,拥挤死 亡:如果细胞的邻居在四个以上,则该细胞在下一个状态死亡。 3, 稳定:如果细胞的邻居为两个或三个,则该细胞在下一个状态稳定。 4,复活:如果某位置原无细胞存活,而该位置的邻居为三个,则该 位置将复活一个细胞。
9、字符串核对(String Match) 问题说明: 现在的一些高级程序 语言对于字符串的处理支持越来越大, 不过字符串搜寻本身仍是值得 探讨的课题,在这里以 Boyer Moore 法来说明如何进行字符串说明, 这个方法速度
快且容易理解。
10、河内塔(Hanoi2Colors) 问题说明: 河內之塔(Towers of Hanoi)是法国人 M.Claus(Lucas)於 1883 年从泰国带至法国的, 河內 为越战时北越的首都,即现在的胡志明市;1883 年法国数学家 Edouard Lucas 曾提及這个故事,据说创世紀时 Benares 有一座波 罗教塔,是由三支钻石棒(Pag)所支撑,开始时神在第一根棒上放 置 64 个由上至下依由小至大排列的金盘(Disc) ,並命令僧侣将所有 的金盘从第一根石棒移至第三根石棒, 且搬运过程中遵守大盘子在小 盘子之下的原则, 若每日仅搬一个盘子, 则当盘子全数搬运完毕之时, 此塔将损毁,而也就是世界末日來临之时。
11、背包(Kanpsack Problem) 问题说明: 假设一个背包的负重 最大可达 8 公斤, 而希望在背包内放置负重范围你价值最高的物品。
1. Java 基础方面: 2. 1、 作用域 public,private,protected,以及不写时的区别 3. 答:区别如下:
4. 作用域 类 5. public √ 6. protected √ 7. friendly × 8. private × ×
当前类 其他 package √ √ √
同一 package
子孙
√
√
√ × √ ×
√
×
9. 不写时默认为 friendly 10. 2、Anonymous Inner Class (匿名内部类) 是否可以