C 面試常考的兩道題

2021-06-01 06:46:44 字數 691 閱讀 9601

1.說明一下const和readonly的區別

區別有兩點

1.const是乙個確定的值,不可以修改,適用於自然常量,如pi,如 系統引數配置;

readonly可以在執行時修改,比如在建構函式裡可以修改。

2.const修飾的是變數,readonly修飾的是字段。

2.說說using的用法:

1.最常見到的引用命名空間 ,如 using system.text;

2.自動釋放資源。對於實現了dispose介面的類,如果用using包上這個類,會在**結束時自動執行dispose,銷毀自已,如

using (streamwriter sw = new streamwriter("c:\\log.txt"))

簡單說明一下實現dispose的好處,乙個物件如果實現了dispose,這個物件在using完以後會主動銷毀自己,記憶體**機制會優先把他收回。對於占用資源比較多而且建立的數量比較多的類,使用dispose會節約一點記憶體。

3.using的這個用法看到的很少,是用於定義別名的。在引入命名空間時,可以寫成using nstext = system.text.使用system.text.encoding類時,可以寫成nstext.encoding。

他的用處是 當兩個命名空間下有兩個相同的類時,可以對其中乙個命名空間使用比較簡單的別名。在**中使用時會簡單一點

這個功能用的不多。

講兩道常考的階乘演算法題

172.階乘後的零 793.階乘後k個零 1 輸入乙個非負整數n,請你計算階乘n 的結果末尾有幾個 0。比如說輸入n 5,演算法返回 1,因為5 120,末尾有乙個 0。函式簽名如下 int trailingzeroes int n 2 輸入乙個非負整數k,請你計算有多少個n,滿足n 的結果末尾恰好...

兩道面試演算法題

最近面試 兩道演算法題 說難不難 要寫全對也不容易 很慚愧 我沒有一次寫對 第一道 無序int陣列 找到中位數 void swap int a,int b int get kth number vector num,int k,int start,int end 一次劃分結束 index i if ...

CVTE 面試的兩道演算法題

下了班立馬趕往深圳北站,下著大雨又坐過了站,著急地跑向對面的站牌,匆忙間搞得滿頭大汗。好不容易坐上了高鐵,休息片刻,終於有時間整理一下前兩天面試cvte 時遇到的兩道演算法題。1.在陣列中尋找和為固定值的兩個數字 這道題目是一面的時候乙個女面試給出的最後乙個面試問題。題目的大概意思如上,資料不一定有...