原创 瞭解關於指針的字符串數組

首先了解數組     char A[5] = { 'a', 'b', 'c' };     int m = strlen(A) / sizeof(char);     int n = sizeof(A) / sizeof(char);

原创 漢諾塔——我其實還在第一層

漢諾塔問題描述 假設有3個分別命名爲A,B,C的塔座,在塔座A上插有n個直徑大小各不相同,依小從大編號爲1,2,........,n的圓盤。現要求將塔座A上的n個圓盤移至塔座C上,並仍按同樣的順序疊排,圓盤移動時必須遵守下列規則: 每次只

原创 入門四種算法思想之一——貪心算法

首先我們應該知道,貪心算法和分治算法、回溯算法、動態規劃四種算法。只能說是幾種是算法思想,而並不是具體的算法,我們學會他們的目的是來指導我們設計具體的算法和編碼等。       貪心算法,又稱爲貪婪法,即在對問題進行求解時,總是考慮當前

原创 新知識——函數指針

      正常情況下,指針指向的是整型,字符,數組等;而函數指針也一樣,是指向函數的指針變量。       因此函數指針本質上還是指針,只不過指向的對象從我們常見的數組等變成了函數 表示方法 int add(int x);     

原创 關於鏈棧的代碼編寫(我竟然忘了單鏈表的編寫)

一,鏈棧的形式 鏈棧是指採用鏈式存儲結構實現的棧。 通常用單鏈表來表示,鏈棧的結點結構與單鏈表的結構相同。 二,鏈棧的結構體表示 struct Node {     Node *next;      //下一結點     int data

原创 遞歸算法——三行代碼的魅力

遞歸函數的運行過程類似於多個函數的嵌套調用,只是調用函數和被調用函數同一個函數的函數(類似於套娃) 在程序中可以看作: 從主函數中先調用遞歸函數,進入第一層; 在遞歸函數(第一層)中再調用遞歸函數,進入第二層; 。。。。。。。; 在遞歸

原创 散列表——數據結構

一,散列表的基本概念 直接將元素的儲存位置和其關鍵字之間建立某種直接關係,那麼在進行查找時,就無需做比較或做很少次的比較,按照這種關係直接由關鍵字找到相應的記錄,這就是散列表查找法的思想。 它通過對元素關鍵字值進行某種運算,直接求出元素

原创 關於函數重載的理解

函數重載的定義:         兩個以上的函數,具有相同的函數名,但是形參的個數或者類型不同,編譯器根據實參和形參的類型及個數的最佳匹配,自動確定調用哪一個函數,這就是函數的重載。 重載函數的形參定義時注意事項: 個數不同 類型不同 不

原创 關於隊列的鏈表實現形式

表示形式 隊列的鏈表形式與單鏈表類似,只不過多了兩個結點來保存首位結點 一,關於鏈棧的結構體表示 結構體定義 第一種定義方法 struct Node {     int data;         //數據域     Node *fron

原创 關於循環隊列順序表示和實現

隊列的性質 隊列滿足的基本性質爲先進先出,後進後出。 eg:生活中類似於排隊打飯一樣,先排隊的先打飯。 一,關於順序棧的結構體表示 結構體定義     struct Node {     int data[MaxSize];       

原创 30天連更計劃失敗了,但這裏還是談一下堅持了19天(20篇博客)的感想

         由於最近臨近期末考試,需要複習課程以及其它原因這次博客連更計劃終止了,其實我也特別不想停止,但是自身的時間管理能力真的不強以及其它原因,所以不能繼續更新的,可能會在將來某個時間段再次開始連更計劃,但是不得不承認這次計劃要

原创 QT實現黑白棋編寫

一,定義 void Chess::Init()               {     //將背景和線進行初始化     bgFilename.clear();     bgFilename = "../chess/image/22.jp

原创 Windows網絡編程 阻塞式迭代模式和併發模式

區別: 阻塞式迭代模式: 每次只服務一個連接,只有在服務完當前服務器連接之後,纔會繼續服務下一個客戶端連接 阻塞式併發連接模式: 通過多線程,可以同時服務多個連接,每一個線程處理一個客戶端連接   步驟: 阻塞式迭代模式步驟: 1,先連接

原创 冒泡,插入,選擇,希爾排序方法代碼及圖解

冒泡排序 方法: 第一次先從第一個數據開始,比較相鄰的元素,如果第一個比第二個大(或者小)就交換他們兩個, 一直比較到最後一個數,此時找到了一個最大(或者最小的)的數。 然後第二次和第一次方法一樣,但是比第一次少比較一個數,以後每次比前一

原创 關於字符串輸入及在C和C++中的比較問題

C++中關於字符串問題 如何從鍵盤輸入一串字符並存到字符串中 輸入比較: scanf():輸入字符串時,碰到空格即判定爲結束。 getchar():輸入單個字符,會把回車和空格也當作字符(getchar()可以用在數字和字符混合時