C STL在演算法題中的應用 持續更新

2021-10-07 15:50:30 字數 368 閱讀 1160

寫洛谷的題,有時候不會總是會去看題解,有的思路很巧妙,需要學習,有的用了很厲害的stl,之前一直在看,現在想想也是要記下來好一點。這個帖子持續更新吧,再見到好用的stl就在這裡記下來

1.vector,是個容器很好用,但是我基本沒怎麼用過

2.string.find_first_not_of('0'),找到string中第乙個不是0的位置下標

3.nth_element(陣列名,陣列名+第k小元素,陣列名+元素個數),將陣列元素中第k小的整數排出來並在陣列中就位

4.next_permutation(a,a+n);全排列,需要引進algorithm

5.sort()配合cmp函式,sort(a,a+n,cmp),需要引進標頭檔案algorithm

關鍵路徑在演算法題中的應用

1 aov和aoe網 aov是指的用頂點 vertex 表示活動,用邊集表示活動間優先順序的有向圖,圖中不會有環。aoe是指用帶權的邊集 edge 表示活動,用頂點表示事件的有向圖,邊權表示 完成活動所需要的時間。aoe網表示乙個工程的進行過程,它也不應該有環,一般來說它只有乙個源點 入度為零 和乙...

分治演算法在一般選擇問題中的應用

下面有乙個要求就是在乙個陣列中選取第i小的元素,怎麼辦?直接排序?然後再輸出結果?當然這是一種解決方法,但是效率很低,演算法導論中給出了乙個比較經典的解決方法 其過程與快速排序過程中劃分類似。每次劃分集合可以確定乙個元素的最終位置,根據這個位置可以判斷是否是我們要求的第i小的元素。如果不是,那麼我們...

catalan數在筆試題中的應用

令h 0 1,h 1 1,catalan數滿足遞推式 1 h n h 0 h n 1 h 1 h n 2 h n 1 h 0 n 2 例如 h 2 h 0 h 1 h 1 h 0 1 1 1 1 2 h 3 h 0 h 2 h 1 h 1 h 2 h 0 1 2 1 1 2 1 5 另類遞推式 2 ...