原创 註釋轉換(c轉換爲c++)

C語言註釋->C++註釋即/*xxxxx*/->//xxxxx 在轉換註釋前我們先了解一個概念:什麼是有限狀態機? 有限狀態機FSM是軟件上常用的一種處理方法,它把複雜的控制邏輯分解成有限個穩定狀態,在每個狀態上進行處理。 有限狀態機

原创 遞歸實現將參數字符串中的字符反向排列,要求不能使用C函數庫中的字符串操作函數

<span style="font-size:18px;">#include<stdio.h> void reverse_string(char *string) { int len = 0; char*q = string;

原创 簡單工廠模式---靜態工廠方法模式

畢業一年多,好久沒寫csdn了,還需要多多充電,多多學習,多多記錄,多多總結,上學時也學過設計模式,但是沒在做過大項目,也沒用過,也只是看過了,一知半解,工作後項目中的界面框架大佬使用了工廠模式,最近仔細學習了下其中的內容,在此總結作爲記

原创 c++中const的作用

Const 作用 1.   const類型定義:指明變量或對象的值是不能被更新,引入目的是爲了取代預編譯指令 2.   可以保護被修飾的東西,防止意外的修改,增強程序的健壯性。 3.   編譯器通常不爲普通const常量分配存儲空間,而

原创 快速排序

快速排序 快速排序接近二分查找;時間效率爲O(NlogN)-O(N^2); 快速排序的效率依賴於key值 快速排序算法: 快速排序是冒泡排序的一種改進,那可以先選定一個值,然後掃描待排序序列,把小於該值的記錄和大於該值的記錄分

原创 文件壓縮

Huffman樹的應用-------實現文件壓縮項目 Huffman樹的相關定義: WPL(帶權路徑長度) = PL*weight PL (最小路徑長度)= 完全二叉樹的路徑長度 路徑(path):從樹中一個結點到另一個結點之間的分

原创 計數排序

計數排序 <span style="font-size:18px;">//獲取數組中最大值 size_t GetMaxNum(int* arr, int len) { assert(arr && len > 0); int i =

原创 Windows下git的使用

Windows下git的使用 參考:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/,做了簡單的實踐,爲此做個總結。

原创 並查集

題目:n個人有m對好友關係,如果倆個人是直接或者間接的好友(好友的好友的好友...),則認爲他們是同一個朋友圈。請問這n個人裏一共有多少個朋友圈 並查集的定義: 1.將N個不同的元素分成一組不相交的集合。 2.開始時,每個元素就是一個集

原创 QPixmap QImage不能讀取jpg

一、問題QPixmap/QImage不能讀取jpg格式的圖像,但是可以讀取bmp,png格式的圖像二、解決方法QPixmap/QImage不能讀取jpg圖像問題,是因爲沒有把支持相應格式的動態庫放到程序運行目錄;從Qt的安裝目錄下的plu

原创 堆排序

題目:堆排序 分析:降序:小堆;升序,大堆 堆排序也是選擇排序,時間複雜度爲O(NlogN); 函數HeapSort(): 思路:步驟1->先進行建堆,降序:小堆;升序:大堆;   步驟2->最小堆堆頂最小值與最後一個葉子結點交換;

原创 歸併排序

歸併排序------穩定 注:一個無序的數組用歸併排序 分治法,分成倆個有序的數組,然後進行比較合併爲一個有序的數組 時間複雜度:O(NlogN); 空間複雜度:O(N); <span style="font-size:18px;">

原创 大數據

大數據-----------解決了超出內存表示範圍的大數據無法計算的問題,即溢出問題 提出問題:在計算機中,每一種類型都有自己的表示範圍,比如int的表示範圍【0x8000000000000000,0x7fffffffffffffff】

原创 堆的實現

堆的實現 堆的介紹: 二叉堆的底層數據結構爲數組,它可以被視爲完全二叉樹結構; 堆的特性: 1、父結點總是大於(或小於)子結點 2、每個節點的左子樹和右子樹都是一個最大堆(或最小堆) 如圖: 堆的代碼實現如下: 提示:本程序利

原创 二叉樹的面試題

二叉樹的面試題 1.遞歸創建二叉樹; 2.由前序遍歷和中序遍歷重建二叉樹(前序序列:1 2 3 4 5 6 - 中序序列:3 2 4 1 6 5); 3.前、中、後三種遍歷的遞歸; 4.層次遍歷-隊列應用; 5.前、中、後三種遍歷的非遞