原创 單源最短路徑算法
1.單源最短路徑以及Dijsktra算法 2.多源最短路徑以及Floyd算法 1.1單源最短路徑: 即從一個特定的點出發,尋找這個點到其他點的最短路徑 對於一個無權圖,BFS算法就可以了。但是對於加權圖,BFS行不通 1.2 Dijk
原创 隊列和堆棧
本文主要包含以下內容: 一.棧以及棧的實現 二.隊列以及隊列的兩種實現方式 三.總結 一.棧以及棧的兩種實現 1.什麼是棧? 入口和出口是同一個,遵循先進後出FILO的原則 2.棧的兩種實現 順序表方式: template<type
原创 1529ShippingBoat
題目: Shipping Routes 代碼:(AC) #include<iostream> #include<map> #include<stdio.h> #include<string.h> using namespace std
原创 fread feof 文件尾讀取重複的問題
問題: 多路歸併排序時,每次通過fread讀取小文件裏的一個double數據,通過feof判斷是否讀取結束, 結果,在最後總的排序文件中,每個小文件的最後一行的數據回重複一遍 原因: feof只是檢查標誌位,如果是good則返
原创 08:病人排隊
原題:病人排隊 建立鏈表 思路,從左到右歷遍,如果年齡小於60,位置不變。 年齡大於60. 從鏈表的第一個點開始,找到第一個比它小的,插入到該位置 代碼:(AC) #incl
原创 699 - The Falling Leaves
原題 思路:先序歷遍建樹 從最左的一個結點p開始,輸出第一堆 當p不是根節點的時候: p=p->parent cnt =p->e + p->left->right->e +p->right->left->e; 當p是根
原创 3179: 最長單詞
題目:3179 最長單詞 求一串字符中的最長單詞,如果有多個,輸出最後一個 代碼如下: #include<iostream> #include<string.h> #include<stdio.h> using namespace std
原创 10099 - The Tourist Guide
題目大意: 找出從起點到終點路徑最小邊的最大值 這題有一個陷阱,假設最大值爲max,則每次運輸的人數只能爲max-1,因爲每次導遊要包含在運輸人數裏 思路: 貪心+最大生成樹kruskal算法 每次找最大的一條邊,如果這條邊連接了兩棵
原创 25幻方
原題幻方 代碼(AC) #include<iostream> #include<stdio.h> #include<string.h> using namespace std; int main() { int N; cin >>
原创 10034 Freckles
題目大意: 給你n個點的座標,任意兩個點都可以相連 讓你找出最小生成樹的總邊長 思路:最小生成樹問題 prim or kruskal 代碼: prim算法(AC) #include<iostream> #inclu
原创 STL容器之優先隊列
參考:拼裝小火車 要學會如何定義最小優先隊列、最大優先隊列 對於自己定義的結構體,如何定義最小、最大優先隊列 核心: //定義比較結構 struct cmp1{ bool operator ()(int &a,int &b){
原创 補充
1.cin讀取字符串遇到空白會停止,並在末尾加上\0