拓撲排序一,鄰接表(無前驅實現)該方法的每一步總是輸出當前無前趨(即入度為零)的頂點 其抽象演算法可描述為: NonPreFirstTopSort(G){//優先輸出無前趨的頂點 while(G中有入度為0的頂點) do{ 從G中選擇一個入度為0的頂點v且輸出之;(棧頂彈出) 從G中刪去v及其所有出邊;(壓棧) }
一,定義: 沒有權值時:一個有n個節點的聯通圖,產生樹是,極小聯通子圖。包含圖中所有節點,且有保持圖聯通的最少的邊。 邊有權值時:無向聯通圖G=(V,E),權值函數,w:E->R。找到G的一棵最小產生樹,使得 w(T)最小。w(T)為最小產生樹所有邊權值和。二,prime演算法 1:初始化:U={u 0},TE={f}。 節點集U=0,邊集TE=NULL, 2:在所有u∈U, v∈V-U的邊 (u,v)∈E中,找一條權最小的邊(
一,下載安裝NetBeans二,配置Netbeans 中的工具集netbeans--> 工具 --> 選項 --> C/C++ 中設定標籤頁: 產生工具 和 代碼協助產生工具頁: 設定自己的mingw工具集路徑:代碼協助頁: 添加上gtk的include路徑, 這樣netbeans可以代碼提示, 寫代碼時候非常方便.針對gtk只需要配置C編譯器的包含檔案(標頭檔)目錄,把gtk的include、include下的各一級子目錄分別加入即可(一級子目錄下的就不要
一,詞法分析器 作用:讀取來源程式的輸入字元、將他們組成詞素,產生並輸出一個詞法單元序列二,設計原理 1)C程式語言的符號分類:關鍵字、標識符、常數、運算子、界符 2)詞法分析器的二元輸出:<單詞種別,單詞符號屬性值> 3)正規式和狀態轉換圖 4)程式說明: 1>main 中開啟源碼檔案,從第一個字元流讀取
正式轉入俄羅斯方塊的開發是在昨天,之前都是在學習mfc,大約持續了3個星期。在繪圖上花費了很多時間,之前曾經想過在主視窗上劃分出多個view,將方塊運動,下一個方塊,和分數,按鈕資訊分在各個view中,花了一天時間研究拆分視窗之後發現完全沒有必要這樣做,最後我選擇的方法是完全在一個視窗上,將上面的所有內容都已繪圖的方式展現出來。之後又遇到了閃爍的問題,是由於Invalidate()
一個月前寫了一個主題爬蟲,重點主要在對網頁和內部連結分類上,其它部分的細節問題沒有仔細研究。這個過程中我遇到一個很重要的問題:判斷一個URL是否已經爬取過。對待這個問題,我開始的做法是最直接,也是最簡單的:將已經爬行到的URL存入一個HashSet<String>之中,每次抓取網頁之前都判斷一下此URL是否在這個hash表中,如果已經存在,則放棄,否則,將其加入hash表並爬去此URL對應頁面。乍一看起來似乎無可非議,但是隨著url數量的增長, hashset的體積持續增加,
一,題目: 有n個長為m+1的字串,如果某個字串的最後m個字元與某個字串的前m個字元匹配,則兩個字串可以聯結,問這n個字串最多可以連成一個多長的字串,如果出現迴圈,則返回錯誤。二,分析:
題目:有4張紅色的牌和4張藍色的牌,主持人先拿任意兩張,再分別在A、B、C三人額頭上貼任意兩張牌(每人頭上貼兩張) A、B、C三人都可以看見其餘兩人額頭上的牌,看完後讓他們猜自己額頭上是什麼顏色的牌, A說不知道,B說不知道,C說不知道,然後A說知道了。 請教如何推理,A是怎麼知道的。如果用程式,又怎麼實現呢?思路:目的是推匯出A的顏色,由於A先看B、C,則應先假定B、C的顏色然後推導A分析:頭上可能出現的牌為 bb、rr、rb(
最近的寫了一個簡單的搜尋引擎,測試階段用到多台機器並行工作,代碼分布到好幾台機器上,因此代碼之間的協調一致成了一個問題,實在忍受不老拷貝來拷貝去的煩惱了.決定用svn解決問題,正好學習一下使用方法。按照網上的方法安裝了外掛程式之後,經常莫名其妙的出現 jvm terminated exit code 1 這個錯誤,嘗試了許多方法,包括重裝系統,重裝了n個版本的eclipse,最後鎖定到svn外掛程式的問題上。於是使用一片文章上的方法裝了三個外掛程式之後,問題迎刃而解,遇到svn
一,題目:輸入兩個整數 n 和 m,從數列1,2,3.......n 中隨意取幾個數,使其和等於 m ,要求將其中所有的可能組合列出來。二,解釋:比如輸入m=4 n=4 則輸出為:4 1+3 而2+2不正確,因為重複輸出數字了 中心思想:1)如果1+2+3+……+n<m 則不存在這個數
一,題目 1.用天平(只能比較,不能稱重)從一堆小球中找出其中唯一一個較輕的。使用x次天平,最多可以從y個小球中找出較輕的那個,求y與x的關係式 2.有一個很大很大的輸入資料流,大到沒有儲存空間可以將其儲存下來,而且只輸入一次,如何從這個輸入資料流中隨機取得m個記錄 3.大量的URL字串,如何從中去除重複的,最佳化時間空間複雜度二,分析 1. y=3^x 2.
Statement和PreparedStatement的區別就不多廢話了,直接說PreparedStatement最重要的addbatch()結構的使用. 1.建立連結,(打電話撥號 ) Connection connection =getConnection();2.不自動 Commit (瓜子不是一個一個吃,全部剝開放桌子上,然後一口舔了)
題目:給出倆個單向鏈表的頭指標,比如h1,h2,判斷這倆個鏈表是否相交, 為了簡化問題,我們假設倆個鏈表均不帶環。 問題擴充: 1,如果鏈表可能有環列? 2,如果需要求出倆個鏈表相交的第一個節點列?解答:一,關於鏈表有環的思考理解: 1,如何判斷鏈表有環? 思考:單鏈表有環的判斷?什麼意思?一直向後遞迴遞迴到p->next=NULL;不就完了?
題目:建立一個鏈表,然後反轉一下#include <iostream.h>#include <malloc.h>using namespace std;struct node{int data;node *next;};void insert(node *root,node *p){p->next=root->next;root->next=p;}node *create(int a[],int n){node *root=(node *)malloc(
在opengl編程中,所以使用glMultiTexCoord2f( GL_TEXTURE0+i, x, y ); 你會發現這個函數都沒有定義的,以及GL_TEXTURE0,這個常量。因為在vc編譯器中,opengl的版本是1.1,版本比較落後,下個glew庫就可以了。安裝的步驟,與glut一模一樣,將dll動態連結程式庫放在c:/WINDOWS:/system32;
一,次最小產生樹 定義:設T是圖G的最小產生樹,如果T1滿足ω(T1)=min{ω(T’)| T’∈Not(T)},則T1是G的次小產生樹。 解釋:除了最小產生樹外,另外一個產生樹的權值和最小的產生樹,定義為次最小產生樹。 經典題目:POJ1679 The Unique MST,對於一張圖,判斷最小產生樹是否惟一。惟一的定義是:不存在第二棵產生樹,它的權值與最小產生樹的權值相等。w(次最小產生樹)!=w(最小產生樹)
判斷整數序列是不是二叉尋找樹的後序遍曆結果題目:輸入一個整數數組,判斷該數組是不是某二元尋找樹的後序遍曆的結果。 如果是返回true,否則返回false。例如:輸入5、7、6、9、11、10、8,由於這一整數序列是如下樹的後序遍曆(左右根)結果: 8 / \ 6 10 / \ / \ 5 7 9
最近在google code 上面看了很多3d方面的優秀的庫,以及一些遊戲引擎, 學習到了很多東西,當然了要歸功於開源,再一次被開源的魅力所感動。這裡我想和大家分享一個小型的3D庫,名字簡稱也叫GTL: Geometry Template Library。說到GTL一般人都會想到graphy template library ...這個庫所有類列表:file box2.hpp 二維包圍盒file box3.hpp 三維包圍體file circle.hpp 圓file
最近在幫同學弄一個東西,無奈需要研究一下lucene,在這裡筆記一下叨。大牛繞行……一,環境搭配 下載lucene 2. 9.4 解壓到任何一個地方。 然後在IDE中建立一個Java工程,將之前解壓的檔案夾下的lucene-core-2.9.4.jar 添加到庫中。(工程右鍵屬性,庫,添加jar)二,入門級例子及講解 1)建立索引 為了對文檔進行索引,Lucene 提供了五個基礎的類,他們分別是