題意:給乙個無序的陣列,讓你求排完序後的陣列,相鄰兩值的差值最大為多少,時間和空間複雜度要求線性(o(n))。
分析:主要是排序,像快排和歸併排序都是o(nlogn)的,不滿足要求,這裡可以用基數排序,基數排序的話就是先按個位排序,再按十位,然後百位...等所有位都排完後,便是排好序的陣列了。具體到**部分,cnt存的就是當前位為0-9的個數,cnt[i]+=cnt[i-1]這一步其實就是內部的排序,因為當前位數更大的在後面,然後就沒什麼可說的了,直接看**把。
classsolution
for(int i=1;i<10;i++)cnt[i]+=cnt[i-1
];
for(int i=n-1;i>=0;i--)
copy(buf.begin(),buf.end(),nums.begin());
exp*=10
; }
int ret=0
;
for(int i=1;i)
//coutret;
}};
leetcode題目。題號1
題目描述 給定乙個整數陣列和乙個目標值,找出陣列中和為目標值的兩個數。你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 7 9 所以返回 0,1 解題思路 迴圈遍歷所有可能,每一次判斷是否與...
leetcode 鍊錶1
given a singly linked list l l 0 l1 l n 1 l n,reorder it to l 0 ln l1 l n 1 l 2 ln 2 you must do this in place without altering the nodes values.for e...
leetcode 括號生成 1
題目鏈結 給出 n 代表生成括號的對數,請你寫出乙個函式,使其能夠生成所有可能的並且有效的括號組合。例如,給出 n 3,生成結果為 我的方法,dfs,然後再n 1層上 的前面和後面分別新增括號 另外,這個總數是第n個卡塔蘭數 dfrac binomn 11 n2n class solution el...