第二次任務

2021-09-07 13:44:01 字數 1490 閱讀 8023

一:找到兩個有序陣列的中位數

給定兩個大小為 m 和 n 的有序陣列nums1nums2

請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o(log(m + n))。

你可以假設nums1nums2不會同時為空。

示例 1:

nums1 = [1, 3]

nums2 = [2]

則中位數是 2.0

示例 2:

nums1 = [1, 2]

nums2 = [3, 4]

則中位數是 (2 + 3)/2 = 2.5

解:這題主要是對中位數的乙個理解,中位數就是為了將乙個集合劃分為兩個相同長度的子集,這一題就是講兩個集合劃分得到中位數。除去劃分相同的集合,對於劃分值的判斷確保乙個集合的劃分不會出現負數,由此之後使用二叉樹搜尋,再對劃分值進行判斷後,得出結論。

class solution 

int imin=0, imax=m,halflen=(m+n+1)/2;//劃分i的取值範圍

while(imin<=imax)else if(i>imin&&nums1[i-1]>nums2[j])elseelse if(j==0)else

if((m+n)/2==1)

int minright=0;//右邊沒有集合

if(i==m)else if(j==n)else

return(maxleft+minright)/2;}}

return 0;

}}

二:最長回文子串

給定乙個字串s,找到s中最長的回文子串。你可以假設s的最大長度為 1000。

示例 1:

輸入:"babad"輸出:"bab"注意:"aba" 也是乙個有效答案。
示例 2:

輸入:"cbbd"輸出:"bb"
解:這題可以假設回文子串的中心字元往外拉伸的方法,在左右兩邊相同的情況下左右兩邊各自向外拉伸一格,直至不同位置,由此即可得到回文字元的長度

class solution 

}return s.substring(start,end+1);

}private int expandaroundcenter(string s,int left,int right)

stringbuilder ret = new stringbuilder();

return ret.tostring();

}}

第二次翻譯任務開始報名

最近自己有好多事情要做,所以團隊的事一直沒有時間管,對此我向團隊中的所有成員道個歉,以後注意 在上次任務中,我要特別感謝以下團隊成員 排名不分先後 seven eleven 卡卡michael du kenneth byron fairyvoice supersand masterlrc justi...

第二次翻譯任務開始報名

最近自己有好多事情要做,所以團隊的事一直沒有時間管,對此我向團隊中的所有成員道個歉,以後注意 在上次任務中,我要特別感謝以下團隊成員 排名不分先後 seven eleven 卡卡 michael du kenneth byron fairyvoice supersand masterlrc just...

團隊任務4 第二次衝刺

給出完成本次衝刺需要做的事情 sprint backlog 及相應說明。給出了所有事情的大致分工以及完成進度計畫。給出了為什麼要在第二次衝刺完成這些任務的說明。本次衝刺內容在issues中建立,並制定了開始時間和結束時間以及優先順序。本次衝刺總結。給出本次衝刺中存在的問題。經過討論,將100分按照團...