pair的常見用法詳解:
algorithm標頭檔案下常用函式介紹:
//機試stl之stack——括號匹配
#include
#include
#include
#include
#include
using namespace std;
int main()
else
if(str[i]
==')'
)else}}
while
(!brackets.
empty()
) cout<
cout<
}return0;
}
例題:簡單計算器
題目描述
題目描述
讀入乙個只包含 +, -, *, / 的非負整數計算表示式,計算該表示式的值。
輸入描述:
測試輸入包含若干測試用例,每個測試用例佔一行,每行不超過200個字元,整數和運算子之間用乙個空格分隔。沒有非法表示式。當一行中只有0時輸入結束,相應的結果不要輸出。
輸出描述:
對每個測試用例輸出1行,即該表示式的值,精確到小數點後2位。
示例1輸入
1 + 2
4 + 2 * 5 - 7 / 110輸出
3.00
13.36
//機試stl之stack——表示式求值
#include
#include
#include
#include
#include
using namespace std;
int priority
(char c)
else
if(c ==
'$')
else
if(c ==
'+'|| c ==
'-')
else
} double strtonum
(string str, int &index)
return number;
}double calculate
(double x,double y,char operation)
else
if(operation ==
'-')
else
if(operation ==
'*')
else
if(operation ==
'/')
return result;
}int main()
//宣告與初始化
int index =0;
stack operation;
stack number;
operation.
push
('#');
str +=
'$';
while
(index < str.
size()
)elseif(
isdigit
(str[index]))
else
else}}
printf
("%.2f\n"
,number.
top())
;}return0;
}
機試常見的資料結構
北航的機試要求用標準c程式設計,所以很多c 的庫都沒法用。因此我使用最簡單的 實現了幾個常見的資料結構。標準c庫參考 1.陣列實現的棧。此處棧的元素預設為int,也可以改為其他。struct stack void push int x int pop bool isempty bool isfull...
資料結構 STL
棧 先入後出 filo 的一種資料結構。常見操作 模擬火車調頭,進製轉換,表示式求值,單調棧 陣列形式 理解 const int num 1e6 10 定義棧的大小,可自由改變 int stac num 乙個整型棧 int top 棧頂指標 int main top 1 設定棧頂指標為 1 stac...
資料結構 stl
uva 11997 題意 給你乙個數k,並且給你k組數,每組k個數,現在在每組中任取乙個數,然後相加可以得到乙個和,這樣的和共有k k個,要求輸出所有可能的和值中最小的k個。思路 問題1 如果只有a,b,c三個大小為k的陣列,我們如何求 和 能獲得最小的前k個和呢?我們只需要將a和b陣列求出前k小的...