原创 算法:和爲s的連續正數序列

和爲s的連續正數序列 例如: 輸入:target = 15 輸出:[[1,2,3,4,5],[4,5,6],[7,8]] 思路:滑動窗口法 滑動窗口的重要性質是:窗口的左邊界和右邊界永遠只能向右移動,而不能向左移動。這是爲了保證滑

原创 算法:求第n個醜數

求第n個醜數 我們把只包含因子 2、3 和 5 的數稱作醜數(Ugly Number)。求按從小到大的順序的第 n 個醜數。 例: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 個醜數。 思路:將前面求

原创 算法:兩個鏈表的第一個公共子節點

兩個鏈表的第一個公共子節點 思路:使用兩個指針 node1,node2 分別指向兩個鏈表 headA,headB 的頭結點,然後同時分別逐結點遍歷,當 node1 到達鏈表 headA 的末尾時,重新定位到鏈表 headB 的頭結

原创 算法:最長無重複子串

最長無重複子串 思路:動態規劃,用map記錄每個字符上次出現的index,則以第 i 個字符結尾的最長子串 dp[i] 的更新規則如下: 若字符 i 與它上次出現的位置 index[i] 之間的距離差不大於 第 i-1 字符結

原创 數據流求中位數

求數據流的中位數 1. 數組 未排序的數組:採用快排的 Partition()。因此,插入時間複雜度是O(1) ,而找中位數的時間複雜度是 O(n)。 排序的數組:適合使用插入排序,插入的時間複雜度是 O(n),而找中位數

原创 ROS項目開發實戰(一)——STM32與ROS串口通信

序    本文主要發佈一些作者從零開始開發ROS的項目實戰經驗,包括一些經驗與本文遇到坑時的解決方案,ROS因爲版本不同與開發環境不同在實際開發中會遇到各類問題,下面就細細道來。一、環境搭建    本人開發環境 ——上位機:MAC主機+P

原创 ROS項目開發實戰(二)——不同ROS版本的多計算機通信

序    ROS多機通信就是多個裝有ROS的不同計算機之間共用同一個ROS主機(Master)實現節點與話題共享,本人經驗建議當你遇到以下問題時候可以嘗試使用多機通信解決:Case①: 一個team多個成員共同開發一個ROS項目,但是不同