原创 赫夫曼(Huffman)樹/編碼

  一 . 基本概念:     赫夫曼樹:給定帶權的N個葉子構成的所有二叉樹中,樹的帶權路徑長度最小的二叉樹(最優二叉樹)     帶權路徑長度:所有樹葉到樹根之間的路徑長度與該節點上權的乘積     權:賦予節點的有意義的參數   二

原创 python - 根據表達式打印真值表

  輸入邏輯表達式,輸出真值表,支持六個基本邏輯運算 最終效果:     輸入合適公式(沒有考慮優先級,只根據括號優先),輸出時會提取其中的元素(比如這裏有A B C),並打印真值表。  算法思路:     求值的一般順序是:帶入每個元

原创 C++多線程編程(真實入門!)

5分鐘學會簡單的C++多線程編程前言線程教程創建一個線程:CreateThread()創建一個帶參線程:lpParameter參數等待指定線程結束:WaitForSingleObject()多線程資源加鎖:CreateMutex(

原创 01揹包,完全揹包,多重揹包,混合揹包詳解

文章轉載至:https://www.cnblogs.com/kuangbin/archive/2011/11/16/2250560.html P01: 01揹包問題 題目:     有N件物品和一個容量爲V的揹包。第i件物品的費用是c[i

原创 STL - emplace 與 push 的區別

(我的STL相關的博客目錄:https://blog.csdn.net/Kprogram/article/details/90408011) 這裏用stack來進行舉例操作 第一點,push 的操作可以直接用於emplace:     1

原创 STL - vector用法總結

(我的STL相關的博客目錄:https://blog.csdn.net/Kprogram/article/details/90408011) (vector-c++官網:http://www.cplusplus.com/reference

原创 Python - 多進程使用教程

什麼是Multiprocessing?     大部分計算機cpu都是多核的,爲了提高效率,把程序分配到多個核裏面同時運行,這就叫多進程。     Python提供了一個mulitprocessing 庫來實現多進程     (本文是學習

原创 c++實現線程池(真實入門!)

10分鐘學會用C++編寫一個簡單的線程池(使用windows.h頭文件)前言基本概念代碼實現“任務”的封裝線程池框架構建成員函數實現測試 前言 這是我們操作系統專業課的一次編程作業,作爲菜雞的我搜索了大量的線程池博客,但不是代 碼

原创 STL - stack用法總結

(我的STL相關的博客目錄:https://blog.csdn.net/Kprogram/article/details/90408011) (stack-c++官網:http://www.cplusplus.com/reference/

原创 最短路徑:Dijkstra算法

本篇博客是我對《算法競賽入門經典》一書上內容的理解和提煉,代碼以及邏輯都是源於此書,若想更細緻的學習,還請移步原作。 注:Dijkstra算法適用於邊權爲正的無向和有向圖,不適用於有負邊權的圖!(原因) 用途:     用於求圖中指定兩點

原创 STL - string用法總結

(我的STL相關的博客目錄:https://blog.csdn.net/Kprogram/article/details/90408011) (string-c++官網:http://www.cplusplus.com/reference

原创 STL - queue用法總結

(我的STL相關的博客目錄:https://blog.csdn.net/Kprogram/article/details/90408011) (queue-c++官網:http://www.cplusplus.com/reference/

原创 python - 文件操作教程

彙總了常用的文件處理方法   本文分爲兩部分,第一部分用於快速上手,第二部分用於系統地學習 第一部分:快速應用(幾分鐘學會簡單的讀寫操作) 這部分內容適用於大多情況了   創建文件:在當前目錄創建一個文件 用 open() 創建文件:  

原创 DFS(深度優先遍歷) & BFS:(廣度優先遍歷)

  DFS (Deep First Search) 概念:     顧名思義,這種遍歷方法是以深度爲優先進行對圖的搜索或者遍歷,至於什麼是以深度爲優先條件,先看下面DFS的基本步驟:    ( 這是一個遞歸思想的DFS)     DFS:

原创 python - pyqt數字時鐘

 用pyqt5實現一個簡易的數字時鐘 時鐘功能:   計時,開始與暫停,刷新並返回csdn訪問量 使用到的庫:   PyQt5:     pyqt應用:QApplication     窗口:QWidget     按鈕:QPushBu