題目描述
git是一種分布式**管理工具,git通過樹的形式記錄檔案的更改歷史,比如: base』<–base<–a<–a』 ^ | — b<–b』 小公尺工程師常常需要尋找兩個分支最近的分割點,即base.假設git 樹是多叉樹,請實現乙個演算法,計算git樹上任意兩點的最近分割點。 (假設git樹節點數為n,用鄰接矩陣的形式表示git樹:字串陣列matrix包含n個字串,每個字串由字元』0』或』1』組成,長度為n。matrix[i][j]==』1』當且僅當git樹種第i個和第j個節點有連線。節點0為git樹的根節點。)
輸入例子:
[01011,10100,01000,10000,10000],1,2
輸出例子:
1
class solution
j++;
}
}
int smallera;
int greaterb;
while(indexa>0 && indexb>0)
else
if(levela>levelb)
if(smallera==0)
else
if(smallera==greaterb)
int i;
for(i=0;i
if(matrix[greaterb][i]=='1' && matrix[i][i]break;}}
if(matrix[smallera][i]=='1' || smallera==i)
else
}return
0;
}};
小公尺程式設計題
乙個工廠製造的產品形狀都是長方體,它們的高度都是h,長和寬都相等,一共有六個型號,他們的長寬分別為1 1 2 2 3 3 4 4 5 5 6 6。這些產品通常使用乙個 6 6 h 的長方體包裹包裝然後郵寄給客戶。因為郵費很貴,所以工廠要想方設法的減小每個訂單運送時的包裹數量。他們很需要有乙個好的程式...
演算法題 小公尺Git
題目描述 git是一種分布式 管理工具,git通過樹的形式記錄檔案的更改歷史,比如 base base a a b b 小公尺工程師常常需要尋找兩個分支最近的分割點,即base.假設git 樹是多叉樹,請實現乙個演算法,計算git樹上任意兩點的最近分割點。假設git樹節點數為n,用鄰接矩陣的形式表示...
小公尺春招程式設計題 第3題
題目描述 1表示a 2表示b 3表示c 26表示z,要求輸入一串數字,輸出所有可能表示的字串 樣例輸入 1212 樣例輸出 abab abl aub lab ll 樣例輸入 1234 樣例輸出 abcd awd lcd 題目分析 如下圖,利用dfs,遍歷二叉樹,剪枝條件 數字不能大於26 宣告乙個l...