C 基礎知識易錯點總結(2)

2021-07-10 05:04:50 字數 871 閱讀 3739

1. 若一組待排資料有序,花費時間最多的是:快速排序,t(n)=o(n^2);

2. 有 1000 個無序的整數,希望使用最快的方式找出前 50 個最大的,最佳的選擇是?

3. 處理雜湊衝突的方法:

4. 詞法分析器用於識別單詞;

5. 計算機作業系統出現死鎖的原因:若干程序因競爭資源而無休止的等待著其他程序釋放已占有的資源;

6. tcp的關閉過程,處於time_wait狀態的連線等待2msl後真正關閉連線;

7. (智力題)賽馬,有25匹馬,每次只能5匹馬進行比賽,比賽只能得到5匹馬之間的快慢程度,而不是速度,請問,最少要比 1 次,才能獲得最快的前3匹馬?

分析:25匹馬,速度都不同,但每匹馬的速度都是定值。現在只有5條賽道,無法計時,即每賽一場最多只能知道5匹馬的相對快慢。問最少賽幾場可以找出25匹馬中速度最快的前3名? 每匹馬都至少要有一次參賽的機會,所以25匹馬分成5組,一開始的這5場比賽是免不了的。接下來要找冠軍也很容易,每一組的冠軍在一起賽一場就行了 (第6場)。最後就是要找第2和第3名。我們按照第6場比賽中得到的名次依次把它們在前5場比賽中所在的組命名為a、b、c、d、e。即:a組的冠軍是第 6場的第1名,b組的冠軍是第6場的第2名……每一組的5匹馬按照他們已經賽出的成績從快到慢編號: a組:1,2,3,4,5 b組:1,2,3,4,5 c組:1,2,3,4,5 d組:1,2,3,4,5 e組:1,2,3,4,5 從現在所得到的資訊,我們可以知道哪些馬已經被排除在3名以外。只要已經能確定有3匹或3匹以上的馬比這匹馬快,那麼它就已經被淘汰了。可以看到, 只有上表中粗體的那5匹馬是有可能為2、3名的。即:a組的2、3名;b組的1、2名,c組的第1名。取這5匹馬進行第7場比賽,第7場比賽的前兩名就是 25匹馬中的2、3名。故一共最少要賽7場。

js基礎知識易錯點(一)

最近替另乙個專案招人,要求基礎知識好,隨便問了一些基礎題,發現了一些易錯的點,總結一下。1 判斷乙個空陣列 var arr 1 json.stringify arr 2 arr instanceof array arr.length 0 3 array.prototype.isprototypeof...

C 易錯點總結

1.下面這段 考察變數的作用域問題。cpp view plain copy include using namespace std void other intmain 答案如下 main 0 10 0 other 4 0 15 main 0 10 8 other 6 4 15 考察點 區域性作用域...

《面試題》java基礎知識易錯點

1 關於a 與 a的辨析 以如下 為例 int m2 4 int n2 5 使用 邏輯運算子 if m2 4 n2 5 system.out.println m2 n2 輸出結果為5 6 使用 邏輯運算子 if m2 4 n2 5 system.out.println m2 n2 輸出結果為5 52...