原创 【數據結構】第二章:堆棧

先了解下後綴表達式和中綴表達式 後綴表達式:運算符號位於兩個運算數之後,如 a b c * + d e / - 其對應的中綴表達式爲 a + b * c - d / e 堆棧(Stack):具有一定操作約束的線性表,只在一端(棧頂,Top

原创 【數據結構】第三章:隊列

隊列(Queue):具有一定操作約束的線性表 特點:FIFO 即先來先服務,只能在一端插入,在另一端刪除 順序存儲實現:由一個一維數組和一個記錄頭元素位置的變量front以及一個記錄隊尾元素位置的變量rear組成 #define Max

原创 【數據結構】第四章:樹

1.靜態查找 0位置爲哨兵 typedef struct LNode *List; struct LNode { ElementType Element [MAXSIZE] ; int Length; };

原创 【ACM專題訓練】二分法

氣球消消樂 蒜頭君有 n 只氣球,蒜頭君把氣球排成一排。初始時,氣球都是白色,現在蒜頭君想用 m 種顏色給氣球塗色,如果相鄰的氣球的顏色相同,這 2 個氣球會發生消消樂,蒜頭君希望你求出會發生消消樂的塗色方法有多少種。最後答案對 10^{

原创 【ACM專題訓練】貪心算法

奶酪工廠 奶牛們收購了一個奶酪工廠,接下來的 (1≤N≤10000) 個星期裏,牛奶價格和勞力價格不斷起伏。第 i周,生產一個單位奶酪需要 Ci​ (1≤Ci​≤5000)便士。 工廠有一個貨棧,保存一單位奶酪,每週需要 S (1≤S≤1

原创 【ACM專題訓練】二叉樹和堆

任務系統 蒜頭君設計了一個任務系統。這個系統是爲了定時提醒蒜頭君去完成一些事情。 系統大致如下,初始的時候,蒜頭君可能會註冊很多任務,每一個任務的註冊如下: Register Q_num Period 表示從系統啓動開始,每過 Perio

原创 【ACM專題訓練】深度優先搜索/抽象的深度優先搜索/深搜的剪枝操作

中國象棋 中國象棋博大精深,其中馬的規則最爲複雜,也是最難操控的一顆棋子。 我們都知道象棋中馬走"日",比如在 (2, 4)位置的一個馬,跳一步能到達的位置有 (0, 3),(0,5),(1,2),(1,6),(3,2),(3,6),(4

原创 【洛谷P1035】 級數求和

題目描述 已知:Sn​=1+1/2+1/3+…+1/n。顯然對於任意一個整數 k,當 n 足夠大的時候,Sn​>k。 現給出一個整數 k,要求計算出一個最小的 n,使得 Sn​>k。 輸入格式 一個正整數 k。 輸出格式 一個正整數 n。

原创 【洛谷P1089】 津津的儲蓄計劃

題目描述 津津的零花錢一直都是自己管理。每個月的月初媽媽給津津300300元錢,津津會預算這個月的花銷,並且總能做到實際花銷和預算的相同。 爲了讓津津學習如何儲蓄,媽媽提出,津津可以隨時把整百的錢存在她那裏,到了年末她會加上20\%20%

原创 【ACM專題訓練】動態規劃專題(DP)

  0.幾種經典的DP   數字三角形問題 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 從頂部向下走,每次只能走下面或者右下,走完全程,問如何走使得權值最大 解法:(由下往上),代碼過於簡單就不列了,兩個for循環套一下即

原创 【洛谷P1909】 買鉛筆

題目描述 P老師需要去商店買n支鉛筆作爲小朋友們參加NOIP的禮物。她發現商店一共有 3種包裝的鉛筆,不同包裝內的鉛筆數量有可能不同,價格也有可能不同。爲了公平起見,P老師決定只買同一種包裝的鉛筆。 商店不允許將鉛筆的包裝拆開,因此P老師

原创 【C語言】判斷上三角矩陣

7-22 判斷上三角矩陣(20 分) 上三角矩陣指主對角線以下的元素都爲0的矩陣;主對角線爲從矩陣的左上角至右下角的連線。 本題要求編寫程序,判斷一個給定的方陣是否上三角矩陣。 輸入格式: 輸入第一行給出一個正整數T,爲待測矩陣的個

原创 【ACM專題訓練】線性數據結構

報數 有n 個小朋友做遊戲,他們的編號分別是 1,2,3...n。他們按照編號從小到大依次順時針圍成一個圓圈,從第一個小朋友開始從 1 報數,依次按照順時針方向報數(加一),報 m 的人會離開隊伍,然後下一個小朋友會繼續從 1 開始報數,

原创 【C語言】到底有多二

7-26 到底有多二(20 分) 一個整數“犯二的程度”定義爲該數字中包含2的個數與其位數的比值。如果這個數是負數,則程度增加0.5倍;如果還是個偶數,則再增加1倍。例如數字-13142223336是個11位數,其中有3個2,並且是

原创 【數據結構】第六章:圖

圖:表示“多對多”的關係 包含 一組頂點:通常用V (Vertex)表示頂點集合 一組邊:通常用E (Edge)表示邊的集合 ■邊是頂點對:(v,w)∈E,其中v,w∈V ■有向邊<v, W>表示從v指向w的邊(單行線)⑦ ■不考慮重邊和