leetcode刷題總結 C語言

2021-10-20 06:56:52 字數 2582 閱讀 1571

1、memset(目標,初始值,長度);

長度一般用sizeof等表示,一般不用具體的數字,只適用於一維陣列和指標,二維不適合

2、case 後面必須是乙個整數,或者是結果為整數的表示式,但不能包含任何變數。

case10:

printf

("...");

break

;//正確

case8+

9:printf

("...");

break

;//正確

case

'a':

printf

("...");

break

;//正確,字元和整數可以相互轉換

case

'a'+19:

printf

("...");

break

;//正確,字元和整數可以相互轉換

case

9.5:

printf

("...");

break

;//錯誤,不能為小數

case a:

printf

("...");

break

;//錯誤,不能包含變數

case a+10:

printf

("...");

break

;//錯誤,不能包含變數

3、注意針對數目一定的,可以用篩選法這裡補一下課

4、如果乙個陣列/變數只是定義了一下,沒有賦值,那麼初始值是隨機數可能》0/<0/=0的是隨機的

5、c語言表示座標,盡量不要用二維陣列的下表表示座標,用結構體會更好,因為二維陣列在處理負數座標時會比較麻煩。或者用a[x][0]表示x點的橫座標的值,a[x][1]表示x點的縱座標的值。

6、排序,用冒泡,兩種表示方法,第一種

for

(int i=

0;i)}

for

(int i=

0;i)}

7、刪除字串中的相同的字元

void main (

)printf

("%s"

,s);

}

8、刪除字串中給定的某個字元

void

delete_char

(char str,

char target)

} str[j]

='\0'

;}

9、字串需要補一下課

10、把乙個char賦值給char*的字串char *key=&key

11、sizeof算長度 strlen算個數

12、bzero和memset函式

void bzero(void

*s,int n);

#include

功能:將字串s的前n個位元組置為0,一般來說n通常取sizeof

(s),將整塊空間清零。

返回值:無返回值

memset函式

函式原型:void *memset(void *s,int c,size_t n);

#include

或者

#include

說明:將s中前n個位元組替換為c並返回s

作用是在一段記憶體塊中填充某個給定的值,它是對較大的結構體或陣列進行清零操作的一種最快方法

13、整數反轉還有回文數要注意到新的暫存現在的數要是long型的

14、c語言求絕對值的函式為abs( x )與fbs( x ),abs( x )包含於stdlib.h,且兩者均包含於math標頭檔案之下。

abs( x )函式 :int abs( int i ); 求整型數的絕對值

fabs( x )函式 :float fabs( float i ); / double fabs( double x ); 求浮點數的絕對值

15、高精度計算

高精度加法:

1、按位逆置,將字串輸入到兩個陣列中

2、開始加

兩個本位相加+進製位=和

和/10

=進製相加結果=和%

10;輸出結果

高精度減法:

1、同樣先逆轉

2、比加法更複雜 首先要判斷哪乙個數字長哪乙個數字短

將長的賦值給a短的給b 如果出現倒著的要加乙個負號

3、借位加減

4、最後輸出

高精度乘法

首先反轉

將每個數值相乘 存進去

再單獨 遍歷 進行累加

c[i+1]

+=c[i]/10

; c[i]%=

10;高精度除法

高精度除以乙個低精度

不用反轉!

for(

int i=

0;i)//從高位向低位按位相除,"按位相除法"四行**搞定

16、ascii碼 a65 a97 z90 z122

17、求任意函式積分 利用定積分的定義來計算

LeetCode刷題總結

123 4567 891011 12 元素交換 swap a 1 a 3 sort排序 sort a.begin a.end 陣列顛倒 reverse a.begin a.end 陣列元素置為0 memset a,0,a.size 陣列取值 a.push back 定義二維陣列 vector vec...

LeetCode刷題總結

123 4567 891011 12 元素交換 swap a 1 a 3 sort排序 sort a.begin a.end 陣列顛倒 reverse a.begin a.end 陣列元素置為0 memset a,0,a.size 陣列取值 a.push back 定義二維陣列 vector vec...

leetcode刷題總結 6 10題

六 zigzag conversion 本題屬於比較簡單的,很容易就能總結出規律。乙個zigzag數以2 numrows 2為乙個迴圈,每乙個豎行的字母下標為乙個cycle,除了第一行和最後一行,中間各行都要加乙個j cycle 2 i i為從零開始的行號,j為每個迴圈裡i cycle n.clas...