求職面試 基礎 基礎問題彙總

2021-06-28 01:36:05 字數 1643 閱讀 1807

取模

5 mod 2 = 1

-5 mod 2 = -5-2floor(-5/2) = -5-2(-3) = 1

當除數與被除數的符號相同時,rem和mod的結果是完全相同的;當除數與被除數的符號不相同時,結果不同。

具體說,rem結果的符號與被除數相同;mod結果的符號與除數相同。

1.求 整數商: c = a/b;

2.計算模或者餘數: r = a - c*b.

求模運算和求餘運算在第一步不同: 取餘運算在取c的值時,向0 方向捨入(fix()函式);而取模運算在計算c的值時,向負無窮方向捨入(floor()函式)。

例如:計算-7 mod 4

那麼:a = -7;b = 4;

第一步:求整數商c,如進行求模運算c = -2(向負無窮方向捨入),求餘c = -1(向0方向捨入);

第二部:計算模和餘數的公式相同,但因c的值不同,求模時r = 1,求余時r = -3。

歸納:當a和b符號一致時,求模運算和求餘運算所得的c的值一致,因此結果一致。

當符號不一致時,結果不一樣。求模運算結果的符號和b一致,求餘運算結果的符號和a一致

complementary set : 補集、餘集、差集

如果a屬於s, a在s中的補集就是s中不屬於a的元素組成的集合

-37 的3進製補碼

三進製-37的4位三進製補碼

1112 --- -40 => 1122--- -37

37的原碼

1101

取反 (1)

1121

加一1122

10的原碼

0101

取反2121

加一2122

1111 --- 40 (1111 取反是1111)

1112 --- -40

十進位制數-10的3進製4位數補碼形式是__d___

a 0101 b 1010 c 2121 d 2122

對於4位三進製數,對於乙個負數,|原碼| + 補碼 = 1 0000, 所以如果求補碼 = 1 0000 - |原碼|

對於這道題,|-10|三進製為0101,則其補碼 = 1 0000 - 0101 = 2122, 所以選d

-10的原碼用3進製表示為2101,求反碼為2121,反碼+1為補碼2122

反碼和補碼wiki

反碼:base minus one's complement

補碼:radix complement

一篇部落格

另乙個角度:

0000 ~ 2222

2222 = 23^3+23^2+23^1+23^0 = 54+18+6+2 = 80

一共可以表示81個數 (3^4)

1個040個正數

40個負數

中間切一刀

2222/2 = 1111 (27+9+3+1=40)

0000 --- 0

0001~1111 --- 1~40

表示正數

1112~2222 --- -40 ~ -1

表示負數

unsigned char

signed char在向int或者 unsigned轉換的時候會做符號位擴充套件。

比如 1000 0000 變成 1111 1111 1000 0000

%x輸出也會轉換為無符號數

機器學習面試求職問題彙總

問題1 過擬合與欠擬合 定義 產生的原因 解決的方法各是什麼 問題2 l1正則與l2正則 有哪些常見的正則化方法?作用各是什麼?區別是什麼?為什麼加正則化項能防止模型過擬合 間題3 模型方差和偏差 能解釋一下機器學習中的方差和偏差嗎?哪些模型是降低模型方差的?哪些模型是降低模型偏差的?舉例說明一下 ...

git基礎問題彙總

用了一段時間git,發現許多用法記不住,立貼寫下來吧。修改配置檔案 gitconfig,內容如下 alias co checkout ci commit st status pl pull ps push dt difftool l log stat cp cherry pick ca commit...

面試基礎問題

math類 方法 math.abs double num 獲取絕對值 math.ceil double num 向上取整數 12.1 13 12.1 12 math.floor double num 向下取整 12.1 12 12.1 13 math.round double num 四捨五入 1....