概述:
左耳朵耗子專欄《左耳聽風》 使用者自發每週完成乙個arts:
1.algorithm:每週至少做乙個 leetcode 的演算法題
3.tip:學習至少乙個技術技巧
algorithm
題目概述:
given an unsorted array of integers, find the length of the longest consecutive elements sequence.
for example,
given[100, 4, 200, 1, 3, 2],
the longest consecutive elements sequence is[1, 2, 3, 4]. return its length:4.
your algorithm should run in o(n) complexity.
**:
public class longestconsecutivesequence
if (num.length == 1)
hashsethashset = new hashset<>();
for (int i : num)
int maxcount = 1;
for (int n : num)
while (hashset.remove(bi**al))
maxcount = math.max(maxcount, count);}}
return maxcount;
}public static void main(string args)
}
有序二維陣列中查詢
題目 在乙個n n二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。舉例1 2342 3473 4784 589 找6,false 找5,true 分析 找6,從右上角開始 也可以左下角 右...
在旋轉有序陣列中查詢元素
1.題目 給定乙個旋轉的有序陣列,比如是旋轉之後得到的,在陣列中查詢是否存在元素key。要求時間複雜度為o lgn 假定陣列中不存在重複元素。2.分析 從上面的選擇陣列可以發現,array middle 將陣列分成兩段,兩段中必有一段是有序的。這樣就可以使用二分查詢了。乙個變形的二分查詢。3.1 i...
在查詢有序二維陣列中查詢元素
解題思路 實現 public class sortedmatrixelementfinder return true private static class sortedmatrix public void excludethisrow public boolean islegalindex pu...