原创 用概率模擬法求圓周率pi
用概率模擬法求圓周率pi package a; /*概率模擬發求圓周率*/ public class MyA { public static void main(String[] args) { final int N = 100
原创 樹型選擇排序
http://zhouyunan2010.iteye.com/blog/1217462
原创 廣度優先遍歷_改造爲遞歸方式
import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; /**第05講-廣度優先遍歷_改造爲遞
原创 井字棋代碼
井字棋代碼 package a; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Scanner
原创 通用菜單_完善功能
爲通用控制檯菜單完善功能: 1. 增加“退出”功能,可以在任意位置放棄選擇 2. 增加“返回到主菜單”功能,可以在任意深度回到主菜單,而不是逐級向上。 3. 爲每個葉子節點(就是最終執行命令)增加一個整數信息,將來選擇結束時返回這個整數信
原创 雙棧結構_表達式求值
import java.util.HashMap; import java.util.Map; import java.util.Stack; public class MyA { //定義計算的方法 static void c
原创 分酒問題_求最大不能組合出的數字
import java.util.Scanner; /* 小明開了一家糖果店。他別出心裁:把水果糖包成4顆一包和7顆一包的兩種。糖果不能拆包賣。 小朋友來買糖的時候,他就用這兩種包裝來組合。當然有些糖果數目是無法組合出來的,比如要買
原创 迷宮問題_按要求操作
小明正在玩一個“翻硬幣”的遊戲。 桌上放着排成一排的若干硬幣。我們用 * 表示正面,用 o 表示反面(是小寫字母,不是零)。 比如,可能情形是:**oo***oooo 如果同時翻轉左邊的兩個硬幣,則變爲:oooo***oooo
原创 數組與動態數組_驗證步驟
角谷定理說: 任何一個正整數,如果是偶數,則除以2,如果是奇數則乘以3再加1,如此反覆,必能最終得到1。 這裏不要求你證明這個定理,只需要驗證10000以內的所有整數哪個經過了最長的步驟,最後纔得到1, 並輸出這個步驟。 比如對9,輸出:
原创 Set接口與應用_推算年齡
美國數學家維納(N.Wiener)智力早熟,11歲就上了大學。他曾在1935~1936年應邀來中國清華大學講學。 一次,他參加某個重要會議,年輕的臉孔引人注目。於是有人詢問他的年齡,他回答說: “我年齡的立方是個4位數。我年齡的4次方是個
原创 智能數組
java提供的數組有個特點: 當數組元素的個數確定後,就不能再追加元素了。 也就是說,數組的大小在創建的時候就固定了。 現在請你來寫一個智能數組類 SmartArray,它能夠根據需要動態地分配空間。 實際上,它只不過是在其它位置分配新的
原创 廣度優先遍歷-示例
import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; public class Test {
原创 最短路徑-迪傑斯特拉解法-Dijkstra法
import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.uti
原创 一般樹形結構_求通路長度
如果定義一顆二叉樹的高度就是從根到葉子的最長距離。試編碼求二叉樹的高度。 其實,二叉樹的高度就是它的左子樹和右子樹中高度最大值 + 1 另外考慮: 當待排序的數據本來就是有序的情況,會發生什麼? 請參考《數據結構》教材解決這個問題。 im
原创 試探與回溯-差三角問題
/**仔細觀察下面的數字組成的三角形: 3 1 4 5 6 2 看出什麼特徵嗎? 首先,它包含了1~6的連續整數。 重要的是:每個數字都是其下方相鄰的兩個數字的差(當然是大數減去小數) 滿足這樣特徵的三角形,稱爲:差三角。 你的任