Time of Update: 2016-12-15
排列組合的概念排列:從n個不同元素中取出m(m≤n)個元素,按照一定的順序排成一列,叫做從n個元素中取出m個元素的一個排列(Arrangement)。組合:從m個不同的元素中,任取n(n≤m)個元素為一組,叫作從m個不同元素中取出n個元素的一個組合。排列組合實現代碼上一個項目做的一個水路的路徑規劃時,用到了排列的資料結構。求任意N個點裡M個點的不同順序的組合個數。這樣求最優路徑。下面貼一段不知道哪裡找的排列組合的演算法。public class
Time of Update: 2016-12-15
什麼是原子操作?原子(atom)本意是“不能被進一步分割的最小粒子”,而原子操作(atomic operation)意為”不可被中斷的一個或一系列操作” 。在C#中有多個線程同時對某個變數進行操作的時候,我們應該使用原子操作,防止多線程取到的值不是最新的值。例如:int result = 0;多線程A正在執行 result(0)+1多線程B同時執行
Time of Update: 2016-12-14
C語言檔案操作解析 在檔案操作中除了開啟操作以及讀寫操作,還有幾種比較常見的操作。下面介紹一下這些操作中涉及到的函數。一.移動位置指標的函數 rewind函數和fseek函數,這兩個函數的原型是: void rewind(FILE *fp); 將位置指標移動到檔案首 int fseek(FILE *fp,long int offset,int origin); 將位置指標移動到距離origin的offset位元組數的位置
Time of Update: 2016-12-12
fopen(開啟檔案)相關函數 open,fclose表標頭檔 #include<stdio.h>定義函數 FILE * fopen(const char * path,const char * mode);函數說明 參數path字串包含欲開啟的檔案路徑及檔案名稱,參數mode字串則代表著流形態。mode有下列幾種形態字串:r 開啟唯讀檔案,該檔案必須存在。r+ 開啟可讀寫的檔案,該檔案必須存在。w
Time of Update: 2016-12-10
本文一共介紹了5種產生隨機數方式,具體如下:第一種:轉載的方法Public Enum stringtype allstring = 1 '大小寫字母 allnumic = 2 '數字 str_num = 3 '大小寫字母+數字 str_upper = 4 '大寫字母 str_lower = 5 '大寫字母 End Enum Function GenerateRandom(ByVal Length
Time of Update: 2016-12-10
最近很忙,既要外出找工作又要兼顧老闆公司的項目。今天在公司,忙裡偷閒,總結一下.NET中的非同步呼叫函數的實現方法,DebugLZQ在寫這篇博文之前自己先動手寫了本文的所有範例程式碼,開寫之前是做過功課的,用代碼說話方有說服力。本文的內容旨在用最簡潔的代碼來把非同步呼叫的方法說清楚,園子裡的高手老鳥可以繞行,不喜勿噴,非誠勿擾~lz的前一篇文章簡單的說了下非同步,主要是從理解上來講;這篇文章主要寫具體的實現方法。實現非同步編程有4種方法可供選擇,這4種訪求實際上也對應著4種非同步呼叫的模式,分為
Time of Update: 2016-12-01
問題描述:給定一個序列a[1],a[2]...a[n],求解其連續子序列中元素和的最大值 例如: 6 -1 5 4 -7 這個序列最大連續子序列和為14 具體問題見: HDOJ 1003 TZU 1202 這個問題在《資料結構與演算法分析--c語言描述》(weiss著)中文版第13頁(英文版第18頁)中也有描述。在第21頁給出了一個演算法程式: int MaxSubsequenceSum(const int A[], int N) { int ThisSum,MaxSum,j;
Time of Update: 2016-11-30
1 讀取作業系統和CLR的版本OperatingSystem os = System.Environment.OSVersion;Console.WriteLine(“Platform: {0}”, os.Platform);Console.WriteLine(“Service Pack: {0}”, os.ServicePack);Console.WriteLine(“Version: {0}”, os.Version);Console.WriteLine(“VersionString: {
Time of Update: 2016-11-26
作為.NET進階內容的一部分,記憶體回收行程(簡稱GC)是必須瞭解的內容。本著“通俗易懂”的原則,本文將解釋CLR中記憶體回收行程的工作原理。基礎知識託管堆(Managed
Time of Update: 2016-11-25
Docker是什嗎? 簡單得來說,Docker是一個由GO語言寫的程式啟動並執行“容器”(Linux containers, LXCs); 目前雲端服務的基石是作業系統層級的隔離,在同一台物理伺服器上虛擬出多個主機。Docker則實現了一種應用程式層級的隔離; 它改變我們基本的開發、操作單元,由直接操作虛擬機器主機(VM),轉換到操作程式啟動並執行“容器”上來。 Docker是為開發人員和系統管理員設計的,用來發布和運行分布式應用程式的一個開放性平台。由兩部分組成: Docker
Time of Update: 2016-11-25
Asp.net串連Access資料庫時,通常我們將資料庫連接字串寫到web.config設定檔中。而串連字串中的資料庫路徑只能用絕對路徑形式表示,這樣如果要移動程式,就必須要修改web.config 中資料庫連接字串的資料庫路徑,很麻煩。如果寫成相對路徑形式如:~/database/test.mdb 也是不正確的。例如: <connectionstrings> <add name="Access"
Time of Update: 2016-11-25
這篇文章向你提供ASP.NET MVC 模型,視圖和控制的高度概覽。換句話說,解釋一下ASP.NET MVC中的 ‘M’, ‘V’, 和 ‘C’。 看完這篇文章以後,你應該就能理解ASP.NET MVC的不同部分是如何共同工作的。而且你也應該能夠理解ASP.NET MVC程式的架構與ASP.NET Web表單程式或ASP程式有如何的不同。 樣本 ASP.NET MVC 應用程式 用以建立ASP.NET MVC Web程式的預設的 Visual Studio 模板包括一個極其簡單的樣本程式,
Time of Update: 2016-11-25
一、 安全性比較低,把文字檔1.txt改成1.jpg照樣可以上傳,但其實現方法容易理解,實現也簡單,所以網上很多還是採取這種方法。Boolean fileOk = false; string path = Server.MapPath("~/images/"); //判斷是否已經選取檔案 if (FileUpload1.HasFile) { //取得檔案的副檔名,並轉換成小寫
Time of Update: 2016-11-24
ASP.NET MVC 5包含在最近發布的Visual Studio 2013開發人員預覽版中,它使開發人員可以應用身分識別驗證過濾器,它們提供了使用各種第三方供應商或自訂的身分識別驗證提供者進行使用者身分識別驗證的能力。不過,這些過濾器要在調用授權過濾器之前應用。 為了建立身分識別驗證過濾器,開發人員需要建立一個C#ASP.NET工程,並且從列出的工程類型中選擇MVC。來自Kunz,Leigh&Associates公司的進階軟體開發工程師Eric
Time of Update: 2016-11-24
在NDC London上,Mads Torgersen提出了對未來C#語言的的計劃。需要注意的是,這些只是計劃,不會保證在哪個版本發布。Damien Guard對這些建議進行了總結和簡要的分析,我們在此為您挑選了其中的一些內容。 唯讀屬性 唯讀自動屬性將允許開發人員在一行代碼中聲明屬性及其後台欄位。public int X { get; } = x; 靜態類型using語句 Visual
Time of Update: 2016-11-24
關於C# C#是達成微軟公用語言運行庫(CLR)的少數語言中的一種。達成CLR的語言可以受益於其帶來的特性,如跨語言整合、異常處理、安全性增強、組件組合的簡易模型以及調試和分析服務。作為現代的CLR語言,C#是應用最為廣泛的,其應用情境針對Windows案頭、移動手機以及伺服器環境等複雜、專業的開發項目。 C#是種物件導向的強型別語言。C#在編譯和運行時都有的強型別檢查,使在大多數典型的編程錯誤能夠被儘早地發現,而且位置定位相當精準。相比於那些不拘泥類型,在違規操作很久後才報出可追蹤到莫名
Time of Update: 2016-11-24
雖然ASP.NET Web Forms不是vNext計劃的一部分,但它並沒有被忽視。作為Visual Studio 2013 Update 2的一部分,它重新開始支援新工具、EF整合和Roslyn。 為什麼Web Forms不是ASP.NET vNext的一部分 作為開始,讓我們先為這個壞訊息做下解釋。為了改進效能和跨平台可移植性,ASP.NET
Time of Update: 2016-11-24
ASP.NET Web API 是非常棒的技術。編寫 Web API 十分容易,以致於很多開發人員沒有在應用程式結構設計上花時間來獲得很好的執行效能。 在本文中,我將介紹8項提高 ASP.NET Web API 效能的技術。 1) 使用最快的 JSON 序列化工具JSON 的序列化對整個 ASP.NET Web API 的效能有著關鍵性的影響。 在我的一個項目裡,我從 JSON.NET 序列化工具轉到了 ServiceStack.Text 有一年半了。 我測量過,Web API
Time of Update: 2016-11-24
又有一種源自於函數式程式設計語言中的概念加入了C#和VB的陣營,這就是被稱為模式比對(Pattern Matching)的特性。初看上去,模式比對的作用類似於一段switch/select語句塊,但它的功能要強大的多。 請注意:由於VB版本的規格說明現在還沒有完成,因此這些樣本主要都是來自於C#中的模式比對規格說明。 is或Matches
Time of Update: 2016-11-24
幾周前我在不同的地方讀到了有關C#6的一些新特性。我就決定把它們都收集到一起,如果你還沒有讀過,就可以一次性把它們都過一遍。它們中的一些可能不會如預期那樣神奇,但那也只是目前的更新。 你可以通過下載VS2014或者安裝這裡針對visual studio2013的Roslyn包來擷取它們。 那麼讓我們看看吧: 1. $標識符 $的作用是簡化字串索引。它與C#中那些內部使用Regex匹配實現索引的動態特性不同。樣本如下:var col = new Dictionary<string,