原创 面試題:C++ stl中sort底層是如何實現的?

https://blog.csdn.net/qq_35440678/article/details/80147601 https://blog.csdn.net/Hanani_Jia/article/details/82498469

原创 自動駕駛:如何使用apollo數據進行點雲配準?

數據集下載來自Apollo數據開放平臺:http://data.apollo.auto/?locale=zh-cn&lang=en 參考論文:2019 ICCV ——DeepICP: An End-to-End Deep Neural N

原创 08 | 棧:如何實現瀏覽器的前進和後退功能?(☆)

當某個數據集合只涉及在一端插入和刪除數據,並且滿足後進先出、先進後出的特性,我們就應該首選“棧”這種數據結構。   如何實現一個“棧”? 注意:從數組中刪除的操作 ,其實並不需要真正的把某個值刪除,只要把我們訪問下標給減一就可以了。 c

原创 10 | 遞歸

編寫遞歸代碼的關鍵是:只要遇到遞歸,我們就把它抽象成一個遞推公式,不用想一層層的調用關係,不要試圖用人腦去分解遞歸的每個步驟。(但是我覺得簡單的遞歸過程,比如二叉樹上的dfs類型的題目,自己要有能畫圖講解的能力,有助於你自己的理解,而不是

原创 15~16 | 二分查找

二分查找相關性質 : 二分查找針對一個有序的數據集合,每次通過和區間的中間元素對比,將待查區間縮小爲之前的一半,知道查到要查找的元素,或者區間縮小爲0。 查詢的時間複雜度:O(logn) 待查區間是:n,n/2,n/4,n/8,...,n

原创 linux下環境變量設置(注意和ubuntu下文件名的區別)

linux下環境變量(注意和ubuntu文件名不同) /etc/profile:在登錄時,OS爲配置用戶環境使用的第一個文件。此文件中包含OS爲每個用戶設置的環境信息,當任意一個用戶登錄時,該文件被執行,OS加載其中的環境變量,並從 /e

原创 linux下無法打開包括文件:“pcl/io/pcd_io.h”: No such file or directory

背景: 今天想把Apollo中TestData對應的點雲pcds數據處理出來,然後在linux編譯鏈接的時候出現了,無法打開包括文件pcl/io/pcd_io.h,沒有這個文件和路徑。後來我查了些資料,知道C++在預處理的include的

原创 如何查看和修改gcc、g++默認include路徑

如何查找gcc、g++默認include路徑?注意:"`"是Tab上面的那個符號。 #gcc `gcc -print-prog-name=cc1plus` -v #g++ `g++ -print-prog-name=cc1plus`

原创 vmware:找不到vmx文件

因爲虛擬機磁盤空間不足,所以想加點內存。我使用gparted工具擴充vmware UBUNTU虛擬機磁盤空間。走到後續開始啓動gparted的時候,發現我沒有進入這個啓動界面: 而是直接開機了,我是根據別人pdf寫的: 在.vmx的文件

原创 11-14|排序

如何衡量一個排序算法? 執行效率 最好情況、最壞情況、平均情況時間複雜度。對於要排序的數據,有的接近有序,有的完全無序。有序度不同的數據,對於排序的執行時間肯定是有影響的,我們要知道排序算法在不同數據下的性能表現。  時間複雜度的係數、常

原创 07|鏈表(下):解決所有鏈表的題目

重點 :只要是涉及到添加、刪除的鏈表問題,創建dummy結點的方法可以省去很多邊界條件判斷。   重點留意邊界條件處理: 如何寫出bug free的代碼,以鏈表爲例子,檢查其邊界條件: 如果鏈表爲空時,代碼是否能正常工作? 如果鏈表只包含

原创 宏包algorithm與algorithmic引發的Undefined control sequence問題

背景:自己是在texlive+vs code環境下寫小論文,在寫算法的時候,一直出現輸入控制語句全部都是沒有定義的,如下 Undefined control sequence. \REQUIRE Undefined contro

原创 17|跳錶

跳錶,能在鏈表上支持類似“二分”查找算法的數據結構。 跳錶定義:在鏈表上加了多級索引的數據結構。 它是一種各方面性能都比較優秀的動態數據結構,可以支持快速的插入、刪除、查找操作,寫起來也不復雜,甚至可以替代紅黑樹。Redis 中的有序集合

原创 海量數據問題(二)

現在你有 10 個接口訪問日誌文件,每個日誌文件大小約 300MB,每個文件裏的日誌都是按照時間戳從小到大排序的。你希望將這 10 個較小的日誌文件,合併爲 1 個日誌文件,合併之後的日誌仍然按照時間戳從小到大排列。如果處理上述排序任務的

原创 fgets()

 在寫網絡編程時候遇到一個問題:通過fgets讀取到了一行輸入到緩衝區中,總是要通過strlen()來查下緩衝區中的長度,然後替換。 一開始沒懂這個操作,後來查了下資料,原來fgets在讀取輸入流的時候,會讀取你最後的那個回車,也就是'\