原创 求棧的最小值

#include<iostream> #include<stack> using namespace std; #define MAX_DATA 10000000 template <class T> class MySta

原创 string的寫時拷貝

#include<iostream> #pragma warning(disable:4996) using namespace std; //class String //{ //public: // String(char

原创 模擬c++的string類

#include<iostream> #include<assert.h> using namespace std; #pragma warning(disable:4996) #define DEFAULT_CAPACITY 5

原创 稀疏矩陣的存儲,及矩陣的轉置

include“Matrix” #pragma once #include<iostream> #include<vector> using namespace std; template<class T> struct Tr

原创 堆的實現及堆的各種應用

#include<iostream> #include<vector> using namespace std; template<class T> class Less //仿函數 { public: Less()

原创 用位圖解決大數據存儲

BitSet.h #include<iostream> #include<assert.h> using namespace std; class BitSet { public: BitSet(size_t N)

原创 單鏈表(c語言版)

SList.h #pragma once #include<stdio.h> #include<assert.h> #include<malloc.h> typedef int DataType ; typedef struct

原创 類模版實現動態順序表

#include<iostream> #include<assert.h> using namespace std; #pragma warning(disable:4996) template<class T, int Def

原创 迷宮

#include<iostream> #include<stack> using namespace std; #pragma warning(disable:4996) const int N = 5; //從文本中讀取迷宮

原创 快排

#include<iostream> #include<assert.h> using namespace std; #include"InsertSort.h" void QuickSort(int* arr, int si

原创 後綴表達式的計算

#include"seqlist.h" template<class T, class Container> //適配器模式 class Stack { public: Stack() :_size(0)

原创 用兩個隊列實現一個棧

queue.h #include<iostream> #include<assert.h> using namespace std; template<typename T> struct Node { template

原创 線索二叉樹

BinaryTreeThreading.h #pragma once #include<iostream> using namespace std; enum PointerTag { LINK, //指針,

原创 插入排序

思路:插入排序的基本操作就是將一個數據插入到已經排好序的有序數據中,從而得到一個新的、個數加一的有序數據,算法適用於少量數據的排序。是穩定的排序方法。插入算法把要排序的數組分成兩部分:第一部分已經排好序,第二部分是一個待插入元素。

原创 萬年曆

#include<iostream> using namespace std; class Date { public: // 初始化列表進行初始化。 Date(int year = 1900, int mo