原创 ulp(unit in the last place)是什麼意思

ULP 百度上的資料非常少,我總結了我查到的相關資料,希望幫助到大家理解。若有解釋不當的地方,歡迎指正! ULP(Unit in the last place)是計算機科學中的一個誤差單位。 想要理解什麼是ULP就需要了解浮點數的

原创 入坑碼農(第五週)

從之前的C++初學者改爲入坑碼農,覺得這樣更合適一些,畢竟我的目標是工作。 給過去的幾周做個總結的話:確實在堅持每天的學習計劃,但是效率在下降。開始的那一週每天都有認真學,基本上就是在leetcode上刷題看題解,後來開始學習操作

原创 Java0xffffffff爲什麼表示爲-1

int i = 0xffffffff; System.out.println(i); 輸出-1 上面的程序有個問題 爲什麼int i = 0xffffffff;沒有報溢出錯誤,且輸出爲-1? 因爲0xffffffff實

原创 C++類的大小計算問題

我在學校上C++課的時候,老師開始教的是類中所有變量的大小加起來就是類的大小。但是實際用“ sizeof ”測試就發現不對,看下面的例子。 class s { public: char a; //1字節 int b; //

原创 C++初學者的第一週

C++初學者經驗分享 本人大三,第一次在csdn上寫博客。一來能分享自己的學習經歷,如果我的經歷能有幸幫到你的話那是最好不過了!二來是能記錄自己的學習過程,方便對自己的編程水平有清晰的階段化認識。 前情提要!!! 這不是一篇技術帖

原创 LDR二叉樹的中序遍歷

二叉樹的中序遍歷 1.遞歸的方法,這個比較簡單。 2.迭代的方法,迭代主體一定要構思好,不然就可能寫的非常複雜。首先迭代維護一個指針,指向當前節點,如果節點不爲空,則節點入棧,指針指向該節點的左子樹。如果節點爲空,則節點指向棧頂節

原创 C++sort函數的基礎使用

sort函數 sort(begin, end , cmp)函數用於給對象排序,一共有三個參數。 begin :對象需要排序的起始位置 end :對象需要排序的末尾位置 排序區間爲 [begin, end) 左閉右開 cmp :用

原创 C++vector基本用法

vector(向量) 聲明和定義 vector<int> a; //聲明一個存儲對象爲 int 的向量 vector<int> b(10, 1); //聲明一個存儲對象爲 int 的向量,有10個元素,且都賦值爲1; //

原创 進程和線程相關問題

操作系統基本特徵 1.併發:操作系統調控多個進程輪流使用計算機資源,不同進程來回切換的速度特別快,看起來就像是在“同時"運行一樣。 2.共享:操作系統使多個進程共享計算機資源,每個進程在運行的時候都認爲自己獲得了cpu,內存,I/

原创 雙指針中的快慢指針

快慢指針是個好東西,經常用在數組和鏈表中。 小強比小明跑得快,他倆在同一個環形跑道、同一個起點開始跑步,只要時間足夠,小強就會超小明一圈追上小明。小強就是快指針,小明就是慢指針。 那麼快慢指針有什麼用呢?試想一下,如果跑道不是環形

原创 char類型的有符號和無符號

char是很多語言裏的字符類型,比如c++/java。在c++中,char默認是有符號類型(signed)的,但是爲什麼一個字符要分有符號和無符號呢?這有什麼區別或者有什麼意義嗎?我開始的時候也總是不明白。查了很多資料發現一個不錯

原创 leetcode遇到的錯誤

各種內存錯誤 AddressSanitizer: stack-overflow on address 0x7fff4d466ff8 (pc 0x0000004122c9 bp 0x7fff4d467030 sp 0x7fff4d4

原创 C++字符串與數字間的轉換

將數字轉換爲字符串 int a = 123; string s; stringstream ss; //stringstream是用於字符串流的輸入輸出的 ss<<a; //向ss中輸入字符串流 ss>>s; /

原创 哈希集,哈希表,哈希搜索

哈希 哈希集(hash_set) 哈希集是與普通集合不同的是,他能完成時間複雜度爲O(1)的查找和插入。 它通過哈希函數建立鍵值(key)與桶號的一一對應關係,當你插入數據時,通過哈希函數計算出桶號並找到相應的桶,如果桶爲空,則插

原创 方向數組在c++中

方向數組 用以簡化模擬方向時的代碼 舉個例子:給定數組中的一個位置(m, n),需要搜索這個點的上下左右四個方向有多少個與該位置值相同的點。 那麼一般的思路就是上下左右四個循環來搜索,搜索到一個就加一。 for (int i =