春天里,百花香...
算法數據結構
程序之血脈:算法數據結構
摘要: 稱球問題經常是面試中的常客,這里我用做了一個稱球的程序,主要的方法就是遞歸和掃描,貼出來請大家指正。
閱讀全文
摘要: 這是一個美國IT企業的面試題,原題大意是從一個文件中讀取出可連通的城市對,給出兩個城市,判斷是否可連通,如果可連通就輸出yes,不可連通就輸出no,否則給出命令行幫助。
其實判斷連接狀態不用遍歷圖,用蔓延法即可,具體做法就是從起始城市開始,依次改變其周邊連通城市的連通狀態,再從周邊開始向周邊連通城市蔓延,如果能蔓延到結束城市的周邊可連通城市,則說明兩個城市是完全可連通的。這種做法和多米諾骨牌效應很像。我姑且稱之為蔓延法。
閱讀全文
摘要: 回溯法有“通用的解題法“之稱。用它可以系統的搜索一個問題的所有解或任一解。會所法是一個既帶有系統性又帶有跳躍性的搜索算法,他在包含問題的所有解的解空間樹中,按照深度有限的策略,從根節點出發搜索解空間樹,算法搜索至解空間樹的任一節點時,總是先判斷該節點是否肯定不包含問題的解。如果肯定不包含,則跳過對該節點為根的子樹的系統搜索,逐層向其祖先節點回溯,否則進入該子樹,繼續按照深度優先的策略進行搜索。回溯法在用來求問題的任一接時,只要搜索到問題的一個解就可以結束。
這種深度優先的解的算法稱為回溯法,它適合于解一些組合數較大的問題。
用回溯法解n皇后問題時,可以用一棵完全n叉樹來表示其解空間。剪去不滿足行列和斜線攻擊的子樹后,剩下的就是問題的解答。
閱讀全文
摘要: 求兩字符串的公共子串,如abc123與123456的公共字串為123,基本想法是在長的字符串前面加上長度等于短字符串的空格前綴,然后拿短字符串與新字符串挨個匹配,匹配上的置上匹配字符,否則置上空格,這樣的新串就包含了匹配字串和空格,再劈分放入set即可,重復的元素會被set略過去。
閱讀全文
摘要: 轉化效果:
阿拉伯數字等于:0 大寫漢字等于:零整
阿拉伯數字等于:3.14159 大寫漢字等于:叁點壹肆壹伍玖
阿拉伯數字等于:101.3 大寫漢字等于:壹佰零壹點叁
阿拉伯數字等于:10203040506070809 大寫漢字等于:壹萬兆零貳佰零叁兆零肆佰零伍億零陸佰零柒萬零捌佰零玖整
阿拉伯數字等于:7897645 大寫漢字等于:柒佰捌拾玖萬柒仟陸佰肆拾伍整
阿拉伯數字等于:500000001000000 大寫漢字等于:伍佰兆零壹佰萬整
阿拉伯數字等于:2435685 大寫漢字等于:貳佰肆拾叁萬伍仟陸佰捌拾伍整
阿拉伯數字等于:5345438976 大寫漢字等于:伍拾叁億肆仟伍佰肆拾叁萬捌仟玖佰柒拾陸整
閱讀全文
摘要: 樹狀結構是生活中常見的數據結構,如公司等級,軍隊等級,類別歸屬,標簽結構都是樹狀結構的具體例子,如何將樹狀結構持久化和從持久化中取出對于使用關系型數據庫的應用一直比較麻煩,不如DB4O這樣的數據庫直接存取這樣簡單.本人用XML文件模擬關系型數據庫,實現了樹狀結構存入文件及從文件中取出的完整功能,對為樹狀結構存取頭疼的程序員有一定參考價值.
例中使用的數據結構為標簽結構,如Java包括J2EE和J2SE,J2EE包括JSp,EJB等,j2se包括swing,awt,applet等.
閱讀全文
sitinspring(http://www.aygfsteel.com)原創,轉載請注明出處.