《學習筆記? 考試與做題的注意事項總結。

2021-08-09 08:52:33 字數 2424 閱讀 8955

陣列:

1.陣列一定不要開太大,int 型 128mb~3200萬,256mb~6400萬,注意char 佔1位元組,long int 佔4位元組,long long 佔8位元組 ,double 佔8位元組

char,short ,int ,long,long long,unsigned long long資料範圍

2.陣列下標中有減法的話一定要注意判邊界,不能訪問負數下標(windows下不會報錯)

3.陣列的指標到底指向空還是實際的數

4.多組資料與特殊要求的題如二分要記得初始化!!! 如果部分初始化的話看看留下的資料對現在會不會有影響!!

5.能不memset就不memset,次數多了會很慢。

字串

1.strlen一定不能放在迴圈裡,不然會t掉

2.gets可以接收空格;而scanf遇到空格、回車和tab鍵都會認為輸入結束,不能接收空格

3.string 型別的字串必須整個賦值,不能只給其中的一位賦值

4.hash 底數大於 字元種數,模數取個大質數或是unsigned long long自然溢位

字元

1.注意字元讀入時的回車與空格

佇列、棧

1.是否有多餘的狀態放入,爆空間

2.stl的雙端佇列會很慢,不如手打

3.判斷空的函式要放前面

最短路、圖論

1.spfa需判負環

2.spfa彈出佇列時要清空陣列

3.dijkstra不能跑負權邊

4.邊如果需要排序的話看看是否需要重新建邊(鄰接表)

搜尋

1.記得定義乙個陣列記錄有沒有訪問過

2.注意特判,防止死循

3.記得剪枝。

變數

1.乙個變數不能定義多次,注意區分全域性變數與區域性變數

2.多次用變數是否初始化

3.double 注意精度

數學

沒事多看看數學吧,省的在考場上對著一道很簡單的數學題抱怨自己沒記住公式。。。考完了抱怨這麼簡單的結論自己考場上沒推出來qaq。。。打表也會用到。。

for,while與if語句

1.注意打的for迴圈的括號與if語句的括號後有沒有多打乙個』;』

2.多重迴圈裡的變數注意區分

3.注意有無冗餘的計算和轉移

函式

1.cmath功能:計算x的y次冪。注意強轉

返回值:x不能為負數且y為小數,或者x為0且y小於等於0,返回冪指數的結果。

c++提供以下幾種pow函式的過載形式:

double pow(double x,int y);

float pow(float x,float y);

float pow(float x,int y);

long double pow(long double x,long double y);

long double pow(long double x,int y);

使用的時候應合理設定引數型別,避免有多個「pow」例項與引數列表相匹配的情況。

其中較容易發生過載的是使用形如:

int x,y;

int num=pow(x,y);

這是乙個比較常用的函式,但是編譯器會提醒有多個「pow」例項與引數列表相匹配。

可以使用強制型別轉換解決這個問題:num=pow((float)x,y);

數學、規律題

1.一般n很大,演算法複雜度要求接近o(n)或o(1)而沒法優化或者是題目**很難實現的題就是找打表規律。

2.公式一定要帶字母推!!

其他

1.不要想當然!!!

2.題目、樣例看不懂多問問。仔細看題,不要給自己增加難度

3.看題時記得標畫重點,記得看輸入輸出描述,注意輸入輸出順序

4.遇到拿不準的題先打暴力,不要以為只要給時間自己就一定能做出來orz

(4). 好的打表是可以過的,但是遇見題不能只想著打表,有的題仔細想想其實很簡單

5.遇到不會的題不要棄療,多看看,萬一會了呢qwq,不會就寫分段函式,再不會就騙分2333

6.聽說題面很長的題不會太難?

7.有時候有些看似很難的題是可以找規律的,開開腦洞也是極好的

8.函式分開打,打完乙個調乙個qwq

9.每次做題都像考試一樣打,爭取一遍ac

10.有時候好的暴力的時間複雜度可以接近dp

學習筆記 C語言 做題注意事項(僅做題)

由於太久不學c語言了,一些東西都忘完了,寫一些做題時遇到的注意事項 1 8進製定義為 int x 010 即前面加個0 16進製為int x 0x10 沒有二進位制的定義規範 2 for 在無約束條件時,預設為ture 3 轉義字元有三種形式 1.8進製 加8進製數字 2.16進製制 x加16進製制...

OC學習筆記 注意事項

alloc new retain之後都必須要呼叫release方法 計數器要變只有這幾種方法 retain release alloc new copy方法才會使計數器改變,誰想用人家物件,就對他進行retain操作,但在dealloc釋放本物件的時候也釋放引用的物件,先釋放引用的物件,然後釋放自己...

變數使用的注意事項 學習筆記

1 變數代表著記憶體中的乙個儲存區域 2 這個區域有自己的變數名稱和資料型別 3 go變數的三種使用方式 3.1指定變數型別,宣告後如果不賦值,則使用預設值 package main import fmt func main 3.2根據值,自動判斷適用型別,型別推導 package main imp...