待解決:
之前寫的幾個機試專題:
幾個常用模板:
注意點整理:
int
getarraylength
(t arr)
void
swap
(int
&a,int
&b)
#include
using namespace std;
intmain()
intmain()
字串/字元陣列相關知識點
char b=;//宣告字元陣列,長度為5
char定義字串
字串的優勢在於輸入、輸出和賦初值,輸入輸出不需要使用循壞。字元陣列需要用迴圈依次輸出每個字元。
char b=
"hello"
;//定義字串
char
*p = b;
cout << b;
//輸出的是hello
cout<<
*p;//指標指向首位址,所以輸出為 h
string str=
"hello world"
; string *p1 =
&str;
//注意必須加取位址運算子 &
cout << str <<
","<<
*p1;
//輸出的是 hello world,hello world
string s = 「hello world!」;參考:printf("%s", s.c_str()); //輸出 「hello world!」
sort排序用法
# include
#include
intmain()
//自己編
#include
#include
#include
//字串長度
intmystrlen
(const
char
* str)
//const?
return len;
}//從strsrc複製到strdest
//其中strdest長度要大於strsrc的長度
char
*mystrcpy
(char
* strdest,
const
char
* strsrc)
//連線兩個字串
char
*mystrcat
(char
*str1,
char
*str2)
str1[len1+len2]
='/0'
;//一定記得最後乙個加上/0
return str1;
}int
main()
stl庫
vector
int n=10;
vectorvect(n,1); //第2個數字不屑的話預設為0.
int n=5;
vector> vec2;
for(int i=0;ix(i+1,1);
vec2.push_back(x);
}for(int i=0;iset
集合不會出現重複元素
#include#includeset c;
for(set::iterator it=c.begin();it!=c.end();it++)
//不要用小於 set內部不一定連續
struct node{
int x, y;
bool operator < (const node &rhs) const {
if(x==rhs.x){//x相等的話 按y排 不然用x排
return y對映表map
關鍵字集合(key),班級集合(value),只能從key找value。key唯一。
在c++中遍歷map是按照關鍵字從小到大遍歷的,這一點和set相同
佇列
廣度優先搜尋
相當於一層層搜,需要用佇列輔助實現。搜最短的一般用bfs,要定義結構體儲存狀態資訊
棧 stack
c++標準庫中的stack
#include stack
方法
功能引數型別
返回值型別
push
壓入元素
t型別/
pop彈出元素//
top返回棧頂元素
/t型別
empty
棧是否為空
/bool型別 true表示空
size
棧的元素個數
/非負整數
動態規劃
錯排公式
f[n]=(f[n-1]+f[n-2])*(n-1);
機試 學習總結
加上 include 可使用fabs double x 取絕對值 f loot double x 向上取整 ceil double x 向下取整 pow double r,double q sqrt double x 算術平方根 round double x 四捨五入 陣列 一開始沒賦值,則每個元素...
清華軟院機試 2023年預推免機試及題解
題目來自這位博主的回憶 鏈結 質因數分解。給乙個n,小於1億,輸出它的從小到大的質因數。如 輸入6,輸出2 3 題解 由於找不到原題,只能根據回憶去解,找不到什麼感覺比較難的點。include include include include include include include inclu...
中山大學 預推免 機試
晚上 6.30 到 9.30 模擬機試,機試題目是此次夏令營的真題。第二天 早上 9.00 到 12.00 正式機試 時長 三個小時 題量 十道題,每題滿分 100 分,按通過樣例給分。優先做會做的 語言 c 或 c 程式設計環境 提交有 中山大學 提供的 oj,但是越到後期提交佇列越長,wait ...