原创 循環隊列的初始化、入隊、出隊等基本操作

循環隊列的初始化、入隊、出隊等基本操作,實現代碼如下:#include<iostream>using namespace std;#define TRUE 1#define FALSE 0//循環隊列的類型定義#define MAXSIZE

原创 漢諾塔問題的遞歸解法

漢諾塔問題的遞歸解法:實現程序:#include<iostream>using namespace std;void move(int n, char i, char j){ cout << "把" << n << "號從" << i <<

原创 鏈隊列的初始化、入隊、出隊等操作實現

鏈隊列的初始化、入隊、出隊等基本操作實現代碼如下:#include<iostream>using namespace std;#define  TRUE 1#define  FALSE 0//鏈隊列定義typedef struct Node

原创 將博客搬至CSDN

以後本人將博客搬至CSDN了,CSDN博客鏈接:http://blog.csdn.net/yanxiaolx。

原创 多棧共享技術,雙端棧的初始化、進棧、出棧操作

    棧的應用非常廣泛,經常會出現一個程序中需要同時使用多個棧的情況。若使用順序棧,會因爲對棧空間大小難以準確估計,從而產生有的棧溢出、有的棧空間還很空閒的情況。爲了解決這個問題,可以讓多個棧共享一個足夠大的數組空間,通過利用棧的動態特性

原创 win10系統桌面圖標變爲白色方框和去除桌面圖標快捷方式小箭頭的方法

 一、有些用戶在開機後,發現windows10系統桌面的圖標都變成了白色的方框。這是怎麼回事?下面就爲大家介紹一下Win10系統桌面圖標變爲白色方框的解決辦法。     導致win10圖標變白的情況有三種,大家可以按照自己的情況選擇具體解決

原创 斐波拉契數列的遞歸、非遞歸、公式法多種方法實現

實現斐波拉契數列:1,1,2,3,5,8...,當n>=3時,f(n)=f(n-1)+f(n-2)。解:求解斐波拉契數列方法很多,這裏提供了4種實現方法和代碼,由於第5種數學公式方法代碼太過繁瑣,只做簡單介紹方法一:遞歸調用,每次遞歸的時候

原创 指針與數組的比較

     C++/C 程序中,指針和數組在不少地方可以相互替換着用,讓人產生一種錯覺,以爲兩者是等價的。     數組要麼在靜態存儲區被創建(如全局數組) ,要麼在棧上被創建。數組名對應着(而不是指向)一塊內存,其地址與容量在生命期內保持不

原创 單鏈表的頭插、尾插、刪除、合併等操作

單鏈表的頭插、尾插、刪除、合併等操作實現代碼如下:#include<iostream>using namespace std;//單鏈表的存儲結構typedef struct Node{ int data; struct Node* nex

原创 鏈棧的基本操作

鏈棧的基本操作實現代碼如下:#include<iostream>using namespace std;#define TRUE 1#define FALSE 0//鏈棧的結構typedef struct node{ int data; s

原创 順序表的查找、插入、刪除、合併操作及其優缺點

順序表的查找、插入、刪除、合併操作,用c++實現相關代碼:#include<iostream>using namespace std;//定義線性表順序存儲結構#define MAXSIZE 100  //線性表最大長度typedef st

原创 順序棧的基本操作:初始化、進棧、出棧、讀棧頂元素

順序棧:利用一組地址連續的存儲單元依次存放自棧底到棧頂的數據元素,同時由於棧操作的特殊性,還必須附設一個位置指針top(棧頂指針)來動態地指示棧頂元素在順序棧中的位置。通常以top=-1表示空棧。代碼如下:#include<iostream

原创 C++/ C循環語句的效率問題

循環語句的效率:C++/ C 循環語句中,f or語句使用頻率最高,whi l e語句其次,do語句很少用。提高循環體效率的基本辦法是降低循環體的複雜性。1.在多重循環中,如果有可能,應當將最長的循環放在最內層,最短的循環放在最外層,以減少

原创 二分查找算法的遞歸、循環實現及其缺陷

關於二分查找法      在學習算法的過程中,我們除了要了解某個算法的基本原理、實現方式,更重要的一個環節是分析算法的複雜度。在時間複雜度和空間複雜度之間,我們又會更注重時間複雜度,往往用犧牲空間換時間的方法提高時間效率。時間複雜度按優劣排