給定乙個陣列 nums,有乙個大小為 k 的滑動視窗從陣列的最左側移動到陣列的最右側。你只可以看到在滑動視窗 k 內的數字。滑動視窗每次只向右移動一位。
返回滑動視窗最大值。
示例:輸入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3
輸出: [3,3,5,5,6,7]
解釋:滑動視窗的位置 最大值
[1 3 -1] -3 5 3 6 7 3
1 [3 -1 -3] 5 3 6 7 3
1 3 [-1 -3 5] 3 6 7 5
1 3 -1 [-3 5 3] 6 7 5
1 3 -1 -3 [5 3 6] 7 6
1 3 -1 -3 5 [3 6 7] 7
class solution
}return res;
}};
實現 int sqrt(int x) 函式。
計算並返回 x 的平方根,其中 x 是非負整數。
由於返回型別是整數,結果只保留整數的部分,小數部分將被捨去。
示例 1:
輸入: 4
輸出: 2
c++ 版本
class solution
return l;
}};
python3版本
class
solution
:def
mysqrt
(self, x:
int)
->
int:
l =0 r = x-
1if x <2:
return x
while
(l < r)
: mid =
int(l +
(r - l +1)
/2)if
(mid * mid <= x)
: l = mid
else
: r = mid -
1return
int(l)
二分排序和查詢
題目 首先產生隨機數,再進行快速排序,再進行二分查詢。include include include void quiksort int a,int low,int high a i a j while a i temp i j a j a i a i temp quiksort a,low,i 1...
排序演算法 二分排序(插入排序 二分查詢)
插入排序就是一直向後讀,第乙個數,加入前面已經有序的一串數里。而插入排序是笨笨的乙個個向前找的,可以優化一下,用二分查詢找到合適的位置。插入排序 void insertsort2 int a,int n 所以只需要理解一下二分查詢就可以了 比如乙個串數,已經有序 分成對等 盡量 兩塊 注意3個數 第...
二分排序(java)
基本思想就是 將待排序元素分成大小大致相同 的兩個子集合,分別 對兩個子集合進行排序,最終將排好序的子集合合併成所要求的排好序的集合。package com.suanfa 二分排序 author administrator public class merge 合併陣列 public void co...