原创 eval命令使用

簡介:eval命令首先掃描命令行進行所有的置換,然後再執行該命令。該命令適用於一次掃描無法實現其功能的變量,即該命令對變量進行兩次掃描。eval命令也可以用於回顯簡單變量,不一定是複雜變量。 實例: (1)eval命令用於回顯簡單變量

原创 項目:文件壓縮與解壓縮

項目簡介: 統計文件中字符出現的次數,利用堆建造Huffman樹(字符出現次數多的編碼短,出現次數少的編碼長);根據建造好的Huffman樹形成編碼,對文件進行壓縮;將文件中出現的字符以及它們出現的次數寫入配置文件,便於解壓縮;根據配置

原创 朋友圈問題(並查集)

問題描述:         假如已知有n個人和m對好友關係(存於數字r)。如果兩個人是直接或間接的好友(好友的好友的好友...),則認爲他們屬於同一個朋友圈,請寫出程序求出這n個人裏一共有多少朋友圈。         例如:n=5,m=3

原创 非遞歸實現二叉樹遍歷(前/中/後序)

//基本數據結構 template<class T> struct BinaryTreeNode { T _data; BinaryTreeNode<T>* _left; BinaryTreeNode<T>* _right; B

原创 daemon進程fork一次和fork兩次區別

          守護進程也稱爲精靈進程(Daemon),是運行在後臺的一種特殊的進程。它獨立於控制終端並且週期性的執行某種任務負等待處理某些發生

原创 關於二叉樹節點個數(節點總個數、葉子節點個數和第 K層節點個數)

//基本數據結構 template<class T> struct BinaryTreeNode { T _data; BinaryTreeNode<T>* _left; BinaryTreeNode<T>* _right; Bi

原创 項目:大數的運算

項目背景:數據的範圍超過long long等整型類型所能存儲的範圍。 項目簡介:實現大數的輸入和輸出以及對它進行加、減、乘和除運算。 開發平臺:Visual Studio 2012 技術要點:C++類和對象,string

原创 面試題:一個數組實現兩個棧

一個數組實現兩個棧 問題分析        利用順序表模擬實現棧(一個數組實現一個棧) 問題解決 方案一:      一個數組從中間分爲兩部分,中間左端爲棧1,中間右端爲棧2;      示例圖:       存在缺點:方案一會存在

原创 數據結構-廣義表(GeneralizedList)實現

廣義表 廣義表是非線性的數據結構,是線性表的一種推廣,由N個序列組成的有序序列;廣義表在表的描述中又得到了表,即允許表中有表,簡而言之,廣義表的定義是遞歸的。廣義表的簡單表示: (1)A=(); (2)B=(a,b); (3)C=(c,

原创 Linux下文件的三個時間

在Linux下我們創建一個test文件,然後用stat查看它的文件時間: 從上圖我們可以看到三個時間,Access time(訪問時間),Modify time(修改時間),Change time(狀態時間)。 下面來解釋一下三個時間:

原创 單鏈表基本操作

單鏈表基本操作 //Linklist.h #pragma once #include <stdio.h> #include <stdlib.h> #include <assert.h> typedef int DataType; typ

原创 矩陣(Matrix)

#include <iostream> #include <vector> using namespace std; template<class T> //對稱矩陣 class SymmeticMatrix { public: //

原创 Linux下apache+PHP+MySQL環境配置

在Linux的root目錄下依次輸入下面3條命令,即可完成環境的配置:   wget -c http://lamp.phpstudy.net/phpstudy.bin   chmod +x phpstudy.bin     #權限設置  

原创 二位數組中數字的查找

        問題描述:在一個二維數組中,每一行都按照從左到右的遞增順序排列,每一列都按照從下到上遞增的順序排列。請完成一個函數,輸入這樣的一個二位數組和一個整數,判斷數組中是否含有該數。        實例:下面二位數組,每行每列是遞

原创 Liunx下的vim配置

Liunx下的vim配置 1.在每個用戶的主目錄下,都可以自己建立私有的配置文件,命名爲:“.vimrc”,如果用戶主目錄存在,也可以直接進入該配置文件(如下圖)。            進入之後, (1)設置語法高亮