原创 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)