阿里巴巴的一道面試題
25.給定乙個整數陣列和乙個整數,返回兩個陣列的索引,這兩個索引指向的數字的加和等於指定的整數。需要最優的演算法,分析演算法的空間和時間複雜度。
#include #include using namespace std;
struct stwoindex
//初始化,同時等於0,說明不存在
};stwoindex getarrayindex(int array, unsigned int ncount, int ntarget)
} else
else
}umvalueindex[array[i]] = i;
} }if (twoindex.unfirst < 0 || twoindex.unsecond < 0)
else
break;
}} }
return twoindex;
}int main()
; stwoindex ti = getarrayindex(array, 15, 17);
}
一道簡單DP題
首先,一看就應該知道這是一道dp題。原因在於其當前結果都依賴於前面計算得到的子結果。區分分治和dp的關鍵條件就在於演算法執行中間階段的計算結果是否依賴於其子問題的結果,若依賴則為dp,否則為分治。dp題的關鍵在於找出狀態轉移方程和初始條件 或者稱為邊界值 找出狀態轉移方程的關鍵又在於找對乙個狀態函式...
一道簡單的演算法題
題目 統計給定數字中,值為1的二進位制位的數量。如果是陣列呢?int getbitcount unsigned int num return count 第一種想法比較簡單,從最後一位開始,比較是否為1,如果為1,就計數器加一。迴圈次數固定,32次。但是這種方法有乙個地方需要注意,那就形參必須為un...
一道簡單的Docker題
docker是什麼?我覺得大致可以理解為linux環境下的虛擬機器 容器 就跟windows環境下的vmware一樣 在打中科大hackergame2020的時候發現有一道docker題 先複習下docker的相關命令 這裡!然後開始做題 apt get update apt install doc...