原创 第九章 順序容器 方便查詢

順序容器概述 關於容器關係運算符的使用 關係運算符左右兩邊的運算對象必須是相同類型的容器,且必須保存相同類型的元素。 兩個vector的capacity不會影響相等性的判定 vector<int> ivec = {1,2,3,4,5

原创 C++ Primer5 第十章 學習筆記

10.2、初識泛型算法 1、只讀算法 //對vec中的元素求和,和的初值是0,頭文件是numeric int sum = accumulate(vec.cbegin(), vec.cend(), 0); //將vector中所有的s

原创 ROS 介紹:定義、架構、通信機制

ROS介紹 ROS是什麼:ROS是一個用於編寫機器人軟件的靈活框架,它集成了大量的工具、庫、協議,提供了類似操作系統所提供的功能,包括硬件抽象描述、底層驅動程序管理、共用功能的執行、程序間的消息傳遞、程序發行包管理,可以極大簡化繁雜多樣的

原创 C++ Primer5 第六章課後練習 學習筆記

傳值參數與傳引用參數 #include<iostream> using namespace std; void a(int); //傳值參數 void b(int&); //傳引用參數 int main() {

原创 C++ primer 第五版 第三章 課後練習

string類的輸入字符和getline函數分別是如何處理空白字符的 標準庫string的輸入運算符自動忽略字符串開頭的空白(包括空格符、換行符、製表符等),從第一個真正的字符開始讀起,直到遇見下一處空白爲止。 getline可保留輸入時

原创 ROS兩節點通信 可同時訂閱與發佈消息

在處理ROS節點通信時,節點a發佈消息,節點b進行訂閱。這時常常會有需要將節點b接收到的消息進行處理之後,重新發布,a進行訂閱。 本人是新手,簡單代碼如下: node_a: #include <ros/ros.h> #include "

原创 C++ Primer5 第七章課後題 練習筆記

關於class和struct 唯一區別:默認訪問權限不同。類可以在它的第一個訪問說明符之前,定義成員,對這種成員的訪問依賴於類的定義方式。對於struct關鍵字,定義在第一個訪問說明符之前的成員是public的,class則相反。 關於默

原创 C++ Primer5 第五章課後練習 部分內容

關於switch語句 (1)case需要注意是否添加break (2)若在多個分支使用了同一個變量,應該將該變量定義在switch語句之前  (3)一個case語句只能對應一個值 (4)case標籤的內容只能是整型常量表達式,若不能使用字

原创 C++ Primer5 第四章課後練習 筆記

典型算術運算規則: C++11標準規定,兩整數相除,商一律向0取整。 取餘:m%(-n)等於m%n,(-m)%n等於-(m%n) 編寫程序,使用條件運算符從vector<int>中找到哪些元素是奇數,然後將這些數翻倍 #include<

原创 存在負權邊的單源最短路問題—Bellman-Ford算法及其優化SPFA算法

1、Bellman-Ford算法是用來處理圖中存在負權邊的最短路情況,當圖中有負權邊時,Dijkstra()就不能用了,計算出的最短路會有問題。這裏要注意若圖中存在負權迴路,最短路很可能不存在(在負權迴路不影響我們想要走過的路徑時,不影響

原创 單源最短路問題(1)—樸素Dijkstra算法及其堆優化

常見的最短路問題分爲兩類:單源最短路(從一個點到其他所有點)、多源匯最短路(任意兩點) 1、在單源最短路問題中,若所有的邊都是非負數,使用Dijkstra算法;若存在負權邊,那麼可以使用Bellman-Ford算法,SPFA是對前者優化。

原创 多源匯最短路問題—Floyd算法

對於求多源匯最短路的問題,我們使用Floyd算法。這個算法的實現思路也是很簡單的,網上的題解也很多。簡單來總結以下,這個算法是基於動態規劃的,我們定義d[k, i ,  j]爲i點到j點途徑k點的最短路徑,i, j, k的取值範圍爲1~n

原创 哈希表實戰經驗

哈希表的作用:簡單來說就是將一個龐大的值域(複雜的數據結構)映射到一個較小的空間(例如0 ~ N,N 爲1e5或1e6等比較小的數) 通常寫哈希函數最簡單方法就是:例如:h(x) = x mod 10^5,將很大的x映射到10^5內。但是

原创 Jetsonnano上手:人臉識別的智能門鈴應用

例程完整代碼參看http://tiny.cc/doorcam。 上手jetsonnano不久,這裏將跑過的一個例程貼出來,用於記錄和填坑。該例程應用人臉識別跟蹤每一個走到家門口的人。 CSI攝像頭的使用:https://github.co

原创 C++ 運算符重載與類型轉換

1、 當一個重載的運算符是成員函數時,this綁定到左側運算對象。成員運算符函數的(顯式)參數數量比運算對象的數量少一個。 通常情況下,不應該重載逗號、取地址、邏輯與和邏輯或運算符。 關於重載運算符的返回類型(應與其內置版本的返回類型兼容