Time of Update: 2018-12-04
1.引言 Linux作業系統在伺服器領域的應用和普及已經有較長的曆史,這源於它的開源特點以及其超越Windows的安全性和穩定性。而近年來,Linux作業系統在嵌入式系統領域的延伸也可謂是如日中天,許多版本的嵌入式Linux系統被開發出來,如ucLinux、RTLinux、ARM-Linux等等。在嵌入式作業系統方面,Linux的地位是不容懷疑的,它開源、它包含TCP/IP協議棧、它易整合GUI。 鑒於Linux作業系統在伺服器和嵌入式系統領域愈來愈廣泛的應用,社會上越來越需要基於Linu
Time of Update: 2018-12-04
//binarySearchTree.cpp -- 2011-07-27-17.18#include "stdafx.h"#include "binarySearchTree.h"#include <iostream>//private methodsbinarySearchTree ::Node * binarySearchTree ::m_makeNode (const Item item){Node * newNode = new Node ;if (NULL ==
Time of Update: 2018-12-04
路徑搜尋,搜尋到目標結點的時候算作一條路徑.不會有兩條一致的路徑,但兩條不同的路徑可以有相同的部分. 同樣只是給出了函數定義,貼.//2011-08-19-21.14 -- 2011-08-19-21.36 by Golden_Shadow.//------------------------------------------------------------------------------------int graphRepresentAsAdjacentMatrix ::m_
Time of Update: 2018-12-04
這個版本出爐比較快,還yeah乎著呢,呵呵. 思想,就是,記錄下單詞的所有首碼,這樣可以減少掃描次數. 我的實現方式,建立一個檔案存放所有單詞的所有首碼,之後同單詞一起裝進表中.添加一個指示域來指示表中的字串是單詞還是首碼.之後在主迴圈中先進行單詞判斷,而後進行首碼判斷.如果當前的字串不是單詞並且也未作為首碼出現在表中,那麼就跳出當前方向的迴圈./*5-13(b)-10-28-21.17.c -- 第五章第十三題*/#include <stdio.h>#include
Time of Update: 2018-12-04
/*Queue.c -- 隊列實現檔案*/#include "Queue.h"/*局部函式宣告*/static QueueNode * makeNode_Q (const Item item) ;/*介面函數定義*/BOOL Initialize_Q (Queue * const pq){*pq = (struct queue *) malloc (sizeof (struct queue)) ;if (NULL == *pq)return FALSE ;(*pq) -> front =
Time of Update: 2018-12-04
區間樹.同樣是一種在二叉樹的基礎上擴充出來的資料結構.每個結點儲存了區間資訊. 這個常式,主要是為了接下來的東西而寫的.當然了,它本身也是很久價值的.//intervalTree.h -- 區間樹標頭檔#include <iostream>namespace tree{typedef int Item ;typedef struct node{Item min, max ;Item maxOfAll ;int number ;struct node * left, *
Time of Update: 2018-12-04
//intervalTree.cpp -- 區間樹實現檔案#include "stdafx.h"#include "intervalTree.h"namespace tree{//private:bool IntervalTree :: m_Overlap (const Item min, const Item max) const{if (m_min <= max){if (min <= m_max)return true ;elsereturn false
Time of Update: 2018-12-04
7.結束語我們已經提出的wamcc的設計方案和實施,一個基於把Prolog編譯成C的完整的Prolog系統。我們表明,這種替代是可行的並具有很多優點。以這種方式獲得的系統很簡單,可擴充,便攜(wamcc工作在32位Sparcs和64位Alphas機器)。這個系統比所有其他學術Prolog快,比商業系統合理,例如:其效能相當於Quintus
Time of Update: 2018-12-04
5. 記憶體管理我們只是在這裡回顧WAM記憶體管理,使用三部分組成棧:Local
Time of Update: 2018-12-04
6. 績效評估現在讓我們細化wamcc系統的系統並比較其他Prolog系統,無論是學術或商業。6.1 基準程式表1給出傳統基準wamcc的表現。時序以秒為單位的Sparc2(2.85MIPS)使用gcc2.5.8的-O2選項。對於每一個程式,可以發現:Prolog的來源程式的行數,總得編譯時間(Prolog到C,gcc,連接器),對象代碼的大小和最終的可執行檔(位元組)和時間。表格1:wamcc的表現6.2 wamcc與學術的Prolog系統讓我們在第一時間同一類別,把wamcc與其他系統比較:
Time of Update: 2018-12-04
4.
Time of Update: 2018-12-04
最近學習deitel父子的C++教程。自己打了下代碼,附上注意點。/*GradeBook1.h:aim:函數原型定義類的介面;coder:cqlf.xu;time:2011-11-14*///描述類的公用介面而沒有暴露類的成員函數的實現//保證程式員不寫出依賴於類的實現細節的客戶代碼#include <string>using std::string;class GradeBook{public:GradeBook (string name);//建構函式(constructor)
Time of Update: 2018-12-04
111C - Petya and
Time of Update: 2018-12-04
題意:找出給定區間內首數字為1的數字。做法:基本數位DP,可是出現了一堆小錯誤 。。。#include<cstdio>#include<cstring>#define LL long longconst int LMT=1002;LL have[LMT],tem[LMT],num[20],left[LMT],right[LMT];/***********一開始把統計區間內符合的數字給搞錯了****/double dp[LMT];void init(void){
Time of Update: 2018-12-04
今天見論壇裡有問怎麼樣實現線程池。碰巧原來寫過一個類似的。現在來說說。(下面的全是個人理解,不見得是正確的。)1。先來說說線程池。為什麼要使用線程池?因為建立線程和釋放線程是要消耗系統資源的,如果要完成一個工作要不停的建立和釋放線程必然會造成很大的系統資源的浪費,所以用線程池。線上程本次工作完成後,不釋放線程,讓線程等待。再有需要讓線程去完成的工作時就把原來建立的線程取過來繼續使用。這樣節省了重複的建立釋放線程的過程。2。如何?功能。根據上面的理解我們來實現這些工作。A.我們先要建立一個容器來裝
Time of Update: 2018-12-04
c++中的int 到 string的轉化1. int sprintf( char *buffer, const char *format [, argument] ... ); <stdio.h>例如: int ss; char temp[64]; string str; ss = 1000; sprintf(temp, "%d", ss); string s(temp);
Time of Update: 2018-12-04
為了測試程式,需要產生一些隨機數,在網上找到一個很多人用的Demo,發現如果連續產生很多隨機數的話,大部分是重複的,因為是根據系統時間來做種子的,我把程式做了一點小的修改,可以產生真正的隨機數,經測試,很少出現重複。#include <stdio.h>#include <time.h>#include <sys/stat.h>#define MAX 100int my_rand(int
Time of Update: 2018-12-04
1 引言線程(thread)技術早在60年代就被提出,但真正應用多線程到作業系統中去,是在 80年代中期,solaris是這方面的佼佼者。傳統的Unix也支援線程的概念,但是在一個進程(process)中只允許有一個線程,這樣多線程就意
Time of Update: 2018-12-04
如果你用的是LINUX/UNIX/MacOSX,那麼我們已經可以開始了,如果你用的是WINDOWS,那麼你需要從網站上下載PTHREAD的WINDOWS開發包,所幸他非常的小。網站地址是http://sourceware.org/pthreads-win32/先來看一個基本的例子: 程式碼#include <pthread.h>#include <iostream>using namespace std;void* tprocess1(void* args){
Time of Update: 2018-12-04
看這樣一段代碼。 view plain#include <iostream> using namespace std; class A{ public: virtual void f(){cout<<"A"<<endl;} }; class B:public A { private: void f(){cout<<"B"<<endl;} }; int main() { A*