演算法題:給出乙個資料
a=[a_0, a_1, a-2, ... a_n](其中n
可變),列印出該數值元素的所有組合。
注:此題要求輸出的是所有的組合,並非所有排列。
思路:陣列中的每乙個數對應乙個標誌位,將標誌位陣列中的每個元素看成是乙個只能為0或1的元素,將這個標誌位陣列從1迴圈到2^n - 1,每次迭代加1,迭代過程中輸出此時標誌位為1的對應元素。
**如下:
#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;
const int max = 0x7fffffff;
const int min = 0x80000000;
void print(string str, int n)
if(flag[i] + cur == 2)
}} delete flag;
}int main()
return 0;
}
2014百度筆試題
師兄給的筆試機會,一共7道題 一.基礎知識題 1.動態鏈結庫和靜態鏈結庫的優缺點 2.輪詢排程和搶占式排程的區別 3.資料庫中常用鎖和應用場景 二.演算法和程式設計題 4.乙個正整數n,求乙個不小於n的不重複數,不重複數是指相鄰兩位不同,如1101是重複數,而1091不是重複數 5.求乙個字串的最長...
2014 百度筆試題二
一 選擇題 15 分 共 10 題 1.在排序方法中,關鍵碼比較次數與記錄地初始排列無關的是 a.shell 排序 b.歸併排序 c.直接插入排序 d.選擇排序 2.以下多執行緒對 int 型變數x的操作,哪幾個需要進行同步 a.x y b.x c.x d.x 1 3.void func 中,變數 ...
2014百度校招筆試題
二 演算法與程式設計題 本題共45分 1.使用c c 編寫函式,實現字串反轉,要求不使用任何系統函式,且時間複雜度最小,函式原型 char reverse str char str 15分 演算法實現 實現字串翻轉 char reverse str char str char begin char ...