原创 01.兩個int的最大公約數
OJ已證 我不記得在哪裏複製的了,侵權告訴我一聲,多謝 int gcd(int x,int y) //用輾轉相除法,求兩數的最大公約數 { int r; while(y>0) { r=x%y
原创 03.統計一個數轉換爲2進制後1的個數.md
首先這個&是按位與,專對二進制來的。每一次a=a&(a-1);就統計一下1,。說一下我的理解,比如說10011,a-1等於10010,與之後,就幹掉了一個1,結果就是10010。也就是每減一次,就幹掉一個1。 while(a!0)
原创 04.字符串分割函數.md
#include<iostream> #include<string.h> #include<string> using namespace std; void main() { string a = " 3 -";
原创 09.打印時間,單位是毫秒
內容來自下面文章 https://blog.csdn.net/xinhua0910/article/details/19046621 #include <stdio.h> #include <sys/timeb.h> #inclu
原创 05二項式係數Cnk.md
一個簡單的動態規劃,配合二項式係數和楊輝三角。 CNK=CN−1K−1+CN−1K C_N^K=C_{N-1}^{K-1}+C_{N-1}^K CNK=CN−1K−1+CN−1K #include<iostream> #in
原创 01.編程習慣.md
文章目錄1.創建線程 1.創建線程 問題:在創建線程的時候調用pthread_create傳入的只能指針,如果傳入的是棧的指針,該函數退出後棧的空間就會被釋放,新線程傳入的值就會是錯的。 解決方法1:可以使用static或mall
原创 兩個菊厲害的讀圖程序
文章目錄1.簡單2.複雜 1.簡單 我忘了我測沒測過了,這個比下面的方法輕便多了。 class Edge { public: int weight;//權重 int from; int to;
原创 一個菊厲害的讀圖程序
尼瑪啊,C++的哈希真是難用到爆,我還非常執拗的不想用boost,結果發現也沒啥差,functional的hash函數效果一樣。 代碼沒有驗證,但是問題不大 #include<iostream> #include<vector>
原创 臨時保存leetcode單詞接龍,有點問題
#include<iostream> #include<vector> #include<list> #include<unordered_map> #include<unordered_set> #include <string
原创 00.類型問題解決方案.md
文章目錄**分治問題:****子數組問題:****雙指針問題:****感染問題:****雙隊列問題:****中位數問題:** 分治問題: 分治是指divide and conquer,將大問題分解爲小問題 ,最終再merge。所以
原创 死鎖/02.銀行家算法.md
文章目錄1.系統安全狀態2.銀行家算法描述2.1算法數據結構2.2 算法內容2.3 安全性算法2.4 實例3.銀行家算法是否實用99.參考的文章 銀行家算法所避免的死鎖問題並不是我們常說的mutex鎖問題,而是爲了讓系統處於安
原创 FUTEX_WAIT_PRIVATE和FUTEX_WAIT的區別
國內幾乎沒啥說的,公司很多網站很多還不讓上,用手機谷歌還可能會被領導批評,尋思回家查,還強制加班下班還很晚,這是又要馬兒跑又要馬兒不吃草啊。 源碼中這塊是這麼寫的 +#define FUTEX_PRIVATE_FLAG 128 +
原创 08.atexit(進程析構函數).md
文章目錄 當進程退出時會自動執行的函數,和析構函數很類似 #include <stdio.h> #include <stdlib.h> #include <unistd.h> void test1() { printf ("he
原创 01.一維對數器
#include<iostream> #include<cstdlib> #include<ctime> #include<vector> #include<algorithm> #include<stack> using nam
原创 01.遞歸的時間複雜度
文章目錄1. 遞歸的時間複雜度 1. 遞歸的時間複雜度 master公式 T(N)=a∗T(N/b)+O(Nd)if(logba>d)O(Nlogba)if(logba==d)O(Nd∗log2N)if(logba<d)O(Nd)